Abstract | ||
---|---|---|
Many-core heterogeneous designs are nowadays widely available among embedded systems. Initiatives such as the HSA push for a model where the host processor and the accelerator(s) communicate via coherent, Unified Virtual Memory (UVM). In this paper we describe our experience in porting the OpenMP v4 programming model to a low-end, heterogeneous embedded system based on the PULP many-core accelerator featuring lightweight (software-managed) UVM support. We describe a GCC-based toolchain which enables: i) the automatic generation of host and accelerator binaries from a single, high-level, OpenMP parallel program; ii) the automatic instrumentation of the accelerator program to transparently manage UVM. This enables up to 4x faster execution compared to traditional copy-based offload mechanisms. |
Year | DOI | Venue |
---|---|---|
2017 | 10.1145/3078659.3079071 | SCOPES |
Field | DocType | ISBN |
Programming paradigm,Computer science,Virtual memory,Parallel computing,Real-time computing,Software,Porting,Host processor,Operating system,Toolchain,Zero-copy,Embedded system | Conference | 978-1-4503-5039-6 |
Citations | PageRank | References |
1 | 0.38 | 7 |
Authors | ||
2 |
Name | Order | Citations | PageRank |
---|---|---|---|
Alessandro Capotondi | 1 | 39 | 8.25 |
Andrea Marongiu | 2 | 337 | 39.19 |