Multi/Many-Core Programming: Where Are We Standing?
Jeronimo Castrillon1, Lothar Thiele2,a, Lars Schorr2, Weihua Sheng3, Ben Juurlink4,b, Mauricio Alvarez-Mesa4, Angela Pohl4, Ralph Jessenberger5, Victor Reyes6 and Rainer Leupers7
1TU Dresden, Germany.
2ETH Zurich, Switzerland.
3Silexica Software Solutions GmbH, Germany.
4TU Berlin, Germany.
5BeOne Frankfurt GmbH, Germany.
6Synopsys Inc, USA.
7RWTH Aachen University, Germany.
This paper presents different views exposed in a special session on the current standing of programming and design tools for multi and manycores in the embedded domain. After approximately ten years of the advent of multicore architectures, we take a look at state-of-the-art and trends in model-based programming methodologies from an academic point of view. This view is contrasted with early experiences in transferring multicore compiler research to industry, and complemented with a critical view on the performance gap introduced by compilers for complex architectures. Today, multicores permeate new applications domains, creating new requirements and forcing researchers to rethink some underlying assumptions. This paper exposes the requirements of one such new domain, namely automotive. Applications in this domain require not only programming tools that comply to standards (e.g., ISO 26262) but also tools for high-level simulation, performance analysis and debugging. In this context, we discuss the role of virtual platforms in managing complexity of hardware-software interactions and accelerating the design of multicore systems for automotive applications.
Full Text (PDF)