Back to Search Start Over

Compiler-Directed Code Restructuring for Improving Performance of MPSoCs.

Authors :
Chen, Guilin
Kandemir, Mahmut
Source :
IEEE Transactions on Parallel & Distributed Systems; Sep2008, Vol. 19 Issue 9, p1201-1214, 14p, 2 Black and White Photographs, 3 Charts, 16 Graphs
Publication Year :
2008

Abstract

One of the critical goals in code optimization for Multiprocessor-System-on-a-Chip (MPSoC) architectures is to minimize the number of off-chip memory accesses. This is because such accesses can be extremely costly from both performance and power angles. Although conventional data locality optimization techniques can be used for improving data access pattern of each processor independently, such techniques usually do not consider locality for shared data. This paper proposes a strategy that reduces the number of off-chip references due to shared data. It achieves this goal by restructuring a parallelized application code in such a fashion that a given data block is accessed by parallel processors within the same time frame so that its reuse is maximized while it is in the on-chip memory space. This tends to minimize the number of off-chip references, since the accesses to a given data block are clustered within a short period of time during execution. Our approach employs a polyhedral tool that helps us isolate computations that manipulate a given data block. In order to test the effectiveness of our approach, we implemented it by using a publicly available compiler infrastructure and conducted experiments with 12 data-intensive embedded applications. Our results show that optimizing data locality for shared data elements is very useful in practice. [ABSTRACT FROM AUTHOR]

Details

Language :
English
ISSN :
10459219
Volume :
19
Issue :
9
Database :
Complementary Index
Journal :
IEEE Transactions on Parallel & Distributed Systems
Publication Type :
Academic Journal
Accession number :
34264157
Full Text :
https://doi.org/10.1109/TPDS.2007.70760