You are hereNew white paper on real-time challenges programming of advanced multicore chips
New white paper on real-time challenges programming of advanced multicore chips
Multicore chips are becoming more and more the norm these days. This is an evolution driven by the semiconductor advances that allow to put more and more logic on the same die. In addition, as all is on a single die, communication between cores can be speedy and low power as no off-chip I/O is necessary. Nevertheless programming these chips, especially for embedded real-time applications is a challenge.
Following the availability of OpenComRTOS on the 48-core Intel SCC chip and the 8-core Texas Instruments C6678, Altreonic can draw some lessons. OpenComRTOS was designed to support such targets transparently and in a distributed real-time context by separating the hardware topology definition from the application topology definition. This provides for portability and scalability. Nevertheless, these modern multicore chips are complex and it still matters where code and data is placed. For more information, read the attached white paper "Hard real-time on multicores: shared resources are the challenge".
Altreonic recently completed a first port of its network-centric OpenComRTOS to two advanced multicore chips. One is the Single-Chip Cloud Computer (SCC), an experimental processor created by Intel Labs, the other is the Texas Instruments 8-core floating point DSP. Both chips are remarkable pieces of engineering with a potentially very high performance. Our measurements however indicate that such complex chips pose serious challenges for the real-time developer. The complexity of the shared resources requires a substantial runtime support, careful analysis and profiling. Moreover, the shared hardware resources increase the statistical response of the system. The conclusion is that developers are better off with multicore designs that simplify the interfaces and avoid shared resources as much as possible. And yes, small code size still matters
|Hard real time on multicore.pdf||922.94 KB|