Publication | Open Access
A Hardware/Software Stack for Heterogeneous Systems
20
Citations
62
References
2017
Year
Heterogeneous ComputingNew TechnologiesEngineeringComputer ArchitectureSoftware EngineeringModel CheckingProcessor ArchitectureHardware ArchitectureHardware PlatformHardware/software StackParallel ComputingManycore ProcessorComputer EngineeringHeterogeneous SystemsComputer ScienceProgramming StackOperating SystemsProgram AnalysisMany-core ArchitectureMultiprocessor SystemParallel ProgrammingSystem Software
Plenty of novel emerging technologies are being proposed and evaluated today, mostly at the device and circuit levels. It is unclear what the impact of different new technologies at the system level will be. What is clear, however, is that new technologies will make their way into systems and will increase the already high complexity of heterogeneous parallel computing platforms, making it ever so difficult to program them. This paper discusses a programming stack for heterogeneous systems that combines and adapts well-understood principles from different areas, including capability-based operating systems, adaptive application runtimes, dataflow programming models, and model checking. We argue why we think that these principles built into the stack and the interfaces among the layers will also be applicable to future systems that integrate heterogeneous technologies. The programming stack is evaluated on a tiled heterogeneous multicore.
| Year | Citations | |
|---|---|---|
Page 1
Page 1