The Community for Technology Leaders
Green Image
Issue No. 02 - February (2012 vol. 61)
ISSN: 0018-9340
pp: 222-236
A. Marongiu , DEIS, Univ. of Bologna, Bologna, Italy
L. Benini , DEIS, Univ. of Bologna, Bologna, Italy
ABSTRACT
Most of today's state-of-the-art processors for mobile and embedded systems feature on-chip scratchpad memories. To efficiently exploit the advantages of low-latency high-bandwidth memory modules in the hierarchy, there is the need for programming models and/or language features that expose such architectural details. On the other hand, effectively exploiting the limited on-chip memory space requires the programmer to devise an efficient partitioning and distributed placement of shared data at the application level. In this paper, we propose a programming framework that combines the ease of use of OpenMP with simple, yet powerful, language extensions to trigger array data partitioning. Our compiler exploits profiled information on array access count to automatically generate data allocation schemes optimized for locality of references.
INDEX TERMS
Arrays, Program processors, Memory management, Programming, Random access memory, System-on-a-chip,NUMA., MPSoC, OpenMP, array partitioning, multiple scratchpads
CITATION
A. Marongiu, L. Benini, "An OpenMP Compiler for Efficient Use of Distributed Scratchpad Memory in MPSoCs", IEEE Transactions on Computers, vol. 61, no. , pp. 222-236, February 2012, doi:10.1109/TC.2010.199
187 ms
(Ver 3.1 (10032016))