A compiler framework for automatically mapping data parallel programs to heterogeneous MPSoCs

Compilers, Architecture and Synthesis for Embedded Systems(2014)

引用 8|浏览12
暂无评分
摘要
Many of today's embedded devices are based on MultiProcessor System-on-Chips(MPSoCs) Such devices are usually heterogeneous, containing DSPs and specialized accelerators as well as one or more CPUs. This heterogeneity allows efficient implementations in specialized domains but is a barrier to their wider use. They are difficult to program as only the CPU is directly exposed to the programmer with access to other resources restricted to narrow library interfaces. This paper enables the exploitation of heterogeneous resources from a high level parallel programming model. It presents an LLVM based compiler that maps OpenMP programs to the underlying heterogeneous cores using an SPMD model of computation. It partitions data and computation across the cores, managing synchronization and memory coherence across different memory domains and operating systems. We evaluate its performance on the OMAP4 MPSoC on a range of data parallel benchmarks. On average it gives a 2.75x speedup over using the low-level library approach. Further-more, it gives a speedup of 1.38x and an improved energy efficiency of 1.4x over using the two A9 cores alone.
更多
查看译文
关键词
high level languages,multiprocessing systems,parallel programming,program compilers,synchronisation,system-on-chip,A9 cores,LLVM based compiler,OMAP4 MPSoC,Open Multimedia Applications Platform(OMAP),OpenMP programs,SPMD model,Single Program Multiple Data,compiler framework,data parallel benchmarks,data parallel program mapping,energy efficiency,heterogeneous MPSoCs,heterogeneous cores,high level parallel programming model,memory coherence,multiprocessor system-on-chips,operating systems,synchronization,Compiler, SPMD, data,heterogeneous processors,parallel
AI 理解论文
溯源树
样例
生成溯源树,研究论文发展脉络
Chat Paper
正在生成论文摘要