eSOL Develops Software Parallelizer Using Model-Based Design
Automatic Generation of Parallel Code for Multi- and Many-core Systems with High Reliability and Performance by Taking Account of Designer’s Intentions
eSOL, a leading developer of real-time embedded software solutions, today announced the development of a prototype of its eSOL Model-Based Parallelizer (MBP) (provisional name) that supports the development of software for multi- and many-core hardware. The incorporation of intelligent functions into equipment is being accompanied by growing use of multi- and many-core processors and multi-chip configurations that offer superior computing power. By using model diagrams in the parallelization process, eSOL MBP generates parallel software with high performance and efficiency in a way that takes account of the designer’s intentions. eSOL MBP is scheduled for release in April 2017.
In response to the increasing scale of software development, greater use is being made of model-based development (MBD) to improve design quality and the reliability of end-product systems. The methodology has already proved effective through widespread use in the development of systems with stringent safety requirements, including in-vehicle ECUs and in the aerospace industry. Safety-critical applications like these are also part of the wider trend toward greater use of intelligent functions, and with this comes a need for multi- and many-core technologies that offer excellent performance and power efficiency. Unfortunately, existing MBD and parallelization tools are not well suited to generating code optimized for multi- and many-core systems, finding it difficult to identify where parallelism can be used and to achieve the optimal allocation of parallel programs to cores while also ensuring safety and real-time performance.
eSOL MBP produces parallel code from C source code generated using a control model designed on the Simulink® model-based design tool from MathWorks®, which has a leading share of the market both in Japan and elsewhere. Analyzing the Simulink block diagram as well as the C source code makes it easier to identify data flows correctly from the signal lines in the diagram and achieve parallelism in the control algorithm in accordance with the designer’s intensions, something that is difficult to achieve by analyzing the C source code in isolation. After identifying where parallel execution is possible based on the individual blocks in the block diagram, eSOL MBP estimates execution performance based on architecture and performance information for the multi- or many-core processor to be implemented. The parallel code is then generated automatically by allocating blocks that have been grouped on the basis of this information to separate cores. These performance estimates use the XML-based Software-Hardware Interface for Multi-Many Core (SHIM)1 format of The Multicore Association.
eSOL MBP was developed through joint research between eSOL and the Edahiro Laboratory of Nagoya University, with assistance from the Strategic Innovation Program for Energy Conservation of the New Energy and Industrial Technology Development Organization (NEDO).
eSOL intends to continue providing strong support for multi- and many-core software development, not only through eSOL MBP, but also through the development and supply of its eMCOS real-time operating system that provides scalable support from microcontrollers through to single core and heterogeneous multi- and many-core systems, and through participation in standardization work in Japan and overseas, including the activities of The Multicore Association and the Embedded Multicore Consortium.
“Having participated in the research and development of this model-based tool for parallelization, I hope that its commercialization by eSOL will lead to its being widely utilized in practical development,” said Professor Masato Edahiro, Department of Information Engineering, Graduate School of Information Science, Nagoya University. “Because it is able to make use of information contained in the model, unlike existing parallelizers, a feature of eSOL MBP is that it is intended to improve productivity and quality by taking account of the designer’s intentions. My hope is that eSOL MBP will lead to wider adoption of multi- and many-core technologies in embedded systems, and that this will facilitate the timely commercial release of many superior systems that take advantage of the latest technologies such as artificial intelligence and robotics.”
“Along with the spread of the IoT, advanced embedded systems such as those used in vehicles and industrial equipment are increasingly being configured as independent devices and equipped with intelligent functions,” said Masaki Gondo, Software CTO and Director of Engineering, eSOL Co., Ltd.. “However, as with past systems, there remains a need for a high level of real-time performance and reliability. In 2012, eSOL developed eMCOS, the first commercially available real-time operating system to extend support from microcontrollers to multi- and many-core processors, thereby supporting the development of software that utilizes the multi- and many-core capabilities of these highly reliable systems. The new eSOL MBP provides efficient, high-performance automation of program parallelization, a task that is very time-consuming to perform by hand. In doing so, we are strengthening the support we offer for the development of software for multi- and many-core systems, covering both software design and architectural considerations.”
1Software-Hardware Interface for Multi-Many Core (SHIM) is a description standard for abstracting the hardware of multi- and many-core processors. It includes information on hardware architecture and performance required during design and development, including processor cores, accelerators, memory and cache, and inter-core communications.
eSOL is a leading embedded software developer that enables customers to accelerate the development of applications based on high-end embedded processors, including multi-core. eSOL’s advanced, scalable, and multi-profiled real-time operating systems are tightly integrated with development tools and middleware components to create flexible development platforms used by OEMs and ODMs worldwide in competitive vertical markets such as automotive, consumer electronics, industrial and medical equipment, and aerospace. Founded in 1975, eSOL is based in Tokyo, Japan.
For more information, please visit http://www.esol.com/