DocumentCode :
1220514
Title :
A complete compiler approach to auto-parallelizing C programs for multi-DSP systems
Author :
Franke, Björn ; Boyle, Michael F P O
Author_Institution :
Inst. for Comput. Syst. Archit., Edinburgh Univ., UK
Volume :
16
Issue :
3
fYear :
2005
fDate :
3/1/2005 12:00:00 AM
Firstpage :
234
Lastpage :
245
Abstract :
Auto-parallelizing compilers for embedded applications have been unsuccessful due to the widespread use of pointer arithmetic and the complex memory model of multiple-address space digital signal processors (DSPs). This work develops, for the first time, a complete auto-parallelization approach, which overcomes these issues. It first combines a pointer conversion technique with a new modulo elimination transformation for program recovery enabling later parallelization stages. Next, it integrates a novel data transformation technique that exposes the processor location of partitioned data. When this is combined with a new address resolution mechanism, it generates efficient programs that run on multiple address spaces without using message passing. Furthermore, as DSPs do not possess any data cache structure, an optimization is presented which transforms the program to both exploit remote data locality and local memory bandwidth. This parallelization approach is applied to the DSPstone and UTDSP benchmark suites, giving an average speedup of 3.78 on four analog devices TigerSHARC TS-101 processors.
Keywords :
C language; digital signal processing chips; embedded systems; message passing; multiprocessor interconnection networks; parallel memories; parallel processing; parallelising compilers; program compilers; reverse engineering; TigerSHARC TS-101 processors; address resolution mechanism; auto-parallelizing C program; complete compiler approach; complex memory model; data transformation technique; embedded application; interprocessor communication; local memory bandwidth; message passing; multiDSP system; multiple address space digital signal processor; parallel processors; pointer conversion technique; real-time application; remote data locality; reverse engineering; Bandwidth; Costs; Digital arithmetic; Digital signal processing; Digital signal processors; Embedded system; Hardware; Message passing; Program processors; Real time systems;
fLanguage :
English
Journal_Title :
Parallel and Distributed Systems, IEEE Transactions on
Publisher :
ieee
ISSN :
1045-9219
Type :
jour
DOI :
10.1109/TPDS.2005.26
Filename :
1388213
Link To Document :
بازگشت