Many applications require both high performance and predictable timing. High-performance can be provided by COTS Multi-Core System on Chips (MPSoC), however, as cores in these systems share the memory bandwidth they are susceptible to interference from each other, which is a problem for timing predictability. We achieve predictability on multi-cores by employing the predictable execution model (PREM), which splits execution into a sequence of memory and compute phases, and schedules these such that only a single core is executing a memory phase at a time. We present a toolchain consisting of a compiler and an Integer Linear Programming scheduling model. Our compiler uses loop analysis and tiling to transform application code into PREM compliant binaries. Furthermore, we solve the problem of scheduling execution on multiple cores while preventing interference of memory phases. We evaluate our toolchain on Advanced-Driver-Assistance-Systems-like scenario containing matrix multiplications and FFT computations on NVIDIA TX1. The results show that our approach maintains similar average performance and improves variance of completion times by a factor of 9.

Combining PREM compilation and ILP scheduling for high-performance and predictable MPSoC execution / Matějka, Joel; Hanzálek, Zdeněk; Forsberg, Björn; Benini, Luca; Sojka, Michal; Marongiu, Andrea. - STAMPA. - 2018-:(2018), pp. 11-20. (Intervento presentato al convegno 9th International Workshop on Programming Models and Applications for Multicores and Manycores, PMAM 2018 tenutosi a aut nel 2018) [10.1145/3178442.3178444].

Combining PREM compilation and ILP scheduling for high-performance and predictable MPSoC execution

Marongiu, Andrea
2018

Abstract

Many applications require both high performance and predictable timing. High-performance can be provided by COTS Multi-Core System on Chips (MPSoC), however, as cores in these systems share the memory bandwidth they are susceptible to interference from each other, which is a problem for timing predictability. We achieve predictability on multi-cores by employing the predictable execution model (PREM), which splits execution into a sequence of memory and compute phases, and schedules these such that only a single core is executing a memory phase at a time. We present a toolchain consisting of a compiler and an Integer Linear Programming scheduling model. Our compiler uses loop analysis and tiling to transform application code into PREM compliant binaries. Furthermore, we solve the problem of scheduling execution on multiple cores while preventing interference of memory phases. We evaluate our toolchain on Advanced-Driver-Assistance-Systems-like scenario containing matrix multiplications and FFT computations on NVIDIA TX1. The results show that our approach maintains similar average performance and improves variance of completion times by a factor of 9.
2018
9th International Workshop on Programming Models and Applications for Multicores and Manycores, PMAM 2018
aut
2018
2018-
11
20
Matějka, Joel; Hanzálek, Zdeněk; Forsberg, Björn; Benini, Luca; Sojka, Michal; Marongiu, Andrea
Combining PREM compilation and ILP scheduling for high-performance and predictable MPSoC execution / Matějka, Joel; Hanzálek, Zdeněk; Forsberg, Björn; Benini, Luca; Sojka, Michal; Marongiu, Andrea. - STAMPA. - 2018-:(2018), pp. 11-20. (Intervento presentato al convegno 9th International Workshop on Programming Models and Applications for Multicores and Manycores, PMAM 2018 tenutosi a aut nel 2018) [10.1145/3178442.3178444].
File in questo prodotto:
File Dimensione Formato  
3178442.3178444.pdf

Accesso riservato

Tipologia: Versione pubblicata dall'editore
Dimensione 1.59 MB
Formato Adobe PDF
1.59 MB Adobe PDF   Visualizza/Apri   Richiedi una copia
Pubblicazioni consigliate

Licenza Creative Commons
I metadati presenti in IRIS UNIMORE sono rilasciati con licenza Creative Commons CC0 1.0 Universal, mentre i file delle pubblicazioni sono rilasciati con licenza Attribuzione 4.0 Internazionale (CC BY 4.0), salvo diversa indicazione.
In caso di violazione di copyright, contattare Supporto Iris

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11380/1171928
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 13
  • ???jsp.display-item.citation.isi??? ND
social impact