Dataflow models of computation for programming heterogeneous multicores
Research output: Contribution to book/Conference proceedings/Anthology/Report › Chapter in book/Anthology/Report › Contributed › peer-review
Contributors
Abstract
The hardware complexity of modern integrated circuits keeps increasing at a steady pace. Heterogeneous Multi-Processor Systems-on-Chips (MPSoCs) integrate general-purpose processing elements, domain-specific processors, dedicated hardware accelerators, reconfigurable logic, as well as complex memory hierarchies and interconnect. While offering unprecedented computational power and energy efficiency, MPSoCs are notoriously difficult to program. This chapter presents MoCs as an appealing alternative to traditional programming methodologies to harness the full capacities of modern MPSoCs. By raising the level of abstraction, MoCs make it possible to specify complex systems with little knowledge of the target architecture. The properties of MoCs make it possible for tools to automatically generate efficient implementations for heterogeneous MPSoCs, relieving developers from time-consuming manual exploration. This chapter focuses on a specific MoC family called dataflow MoCs. Dataflow MoCs represent systems as graphs of computational entities and communication channels. This graph-based system specification enables intuitive description of parallelism and supports many analysis and optimization techniques for deriving safe and highly efficient implementations on MPSoCs.
Details
| Original language | English |
|---|---|
| Title of host publication | Handbook of Computer Architecture |
| Editors | Anupam Chattopadhyay |
| Publisher | Springer Nature |
| Pages | 1107-1146 |
| Number of pages | 40 |
| ISBN (electronic) | 978-981-97-9314-3 |
| ISBN (print) | 978-981-97-9313-6 |
| Publication status | Published - 2025 |
| Peer-reviewed | Yes |
External IDs
| ORCID | /0000-0002-5007-445X/work/206632724 |
|---|
Keywords
Sustainable Development Goals
ASJC Scopus subject areas
Keywords
- Application mapping, Compilers, Dataflow programming, Design space exploration, Heterogeneous multicores, Models of computation, Multicore simulation, Scheduling, Software abstraction, Streaming models