Multicore and manycore system development often lags the availability of processor hardware -- it's not practical for development tool vendors and runtime systems to readily support the unlimited number of processor configurations. The SHIM standard provides a common interface to abstract the hardware properties that matter to multicore tools, facilitating better tool support and quicker time to market.
SHIM's primary goal is to define an architecture description standard useful for software design. Some architectural features that SHIM describes are the hardware topology including processor cores, accelerators, memory/caches and inter-core communication channels, with selected details of each element, and instruction, memory, and communication performance information. While the SHIM standard is publicly available, the vendor-specific information can remain confidential between a processor vendor and its development tool partners.
The SHIM standard is beneficial for many types of tools, including performance estimation, system configuration, and hardware modeling. Performance information is critical for most software development tools, including performance analysis tools and auto-parallelizing compilers. Basic architectural information for system configuration could be used by operating systems, middleware, and other runtime libraries. In addition, the SHIM standard can be used with hardware modeling to support architecture exploration.
The Multicore Association working group that developed the SHIM specification was chaired by Masaki Gondo, Software CTO and GM of Technology at eSOL ( www.esol.com). "Now that the first version of SHIM is complete, eSOL will be among the first companies to implement product utilizing the standard," said Masaki Gondo. "SHIM will enable eSOL and the industry in general, to more easily support successive generations of SoCs from semiconductor vendors without requiring extensive development tool upgrades."
To enable SHIM's adoption, eSOL and Nagoya University are providing a SHIM Editor and Performance measurement tools, distributing them under MIT license at https://github.com/openshim/shim. Anyone with access to the processor hardware specification and a hardware execution environment (such as an evaluation board), can use these tools to generate SHIM XML. These tools will also serve as a reference SHIM application for anyone wanting to integrate and/or explore the specification. For those who are not using the SHIM API but would like to see how the SHIM XML files can be created, executable files of these tools are also available from the site.
"Freescale is actively looking to use SHIM for configuration of Trace IP on our platforms. Performance analysis tools can benefit from SHIM to define a software perspective of the hardware configuration," said Razvan Ionescu, Software Analysis Architect at Freescale Semiconductor. "We believe SHIM will provide a smooth transition from multicore- to manycore-based system configurations."
"We are happy to see the MCA drive to simplify multicore by defining standards for software development," said Sven Brehmer, CEO of PolyCore Software. "We are planning to use SHIM to quickly adapt our product, Poly-Platform, to processors and SOCs."
"The SHIM standard is a perfect match with our Pareon software parallelization tool: it provides an architectural description of the multicore structure with performance information at just the right level of abstraction. The adoption of SHIM is especially attractive for its accompanying tooling that helps to create this information," said Jos van Eijndhoven, Vector Fabrics, CTO. "We are looking forward to integrate SHIM support in a next product release later this year."
"The SHIM specification is at the right level of abstraction and when adopted by suppliers, will be of great help for our tool platform," said Harald Mackamul, technical project leader of AMALTHEA4public. The AMALTHEA4public, which has 22 European partners, is an Information Technology for European Advancement (ITEA 2) funded project focused on developing an open and expandable tool platform for automotive embedded-system engineering based on model-driven methodology.
Inquiries regarding membership in the Multicore Association and participation in this and other working groups should be made to Markus Levy ( markus.levy@multicore-association.org). The SHIM specification is publicly available from the organizations website. For more information, visit http://www.multicore-association.org/workgroup/shim.php.
About The Multicore Association
The Multicore Association provides a neutral forum for vendors interested in, working with, and/or proliferating multicore-related products, including processors, infrastructure, devices, software, and applications. The consortium has made freely available its Multicore Communications API (MCAPI) Multicore Resource Management API (MRAPI), and Multicore Task Management (MTAPI) specifications, as well as its Multicore Programming Practices (MPP) guide. In addition to the SHIM working group, the organization has active working groups focused on Multicore Communications (Version 3.x) and Tools Infrastructure (TIWG). Further information is available at
www.multicore-association.org.
The Multicore Association Markus Levy The Multicore Association +1 530 672-9113 Email Contact