This paper develops a complete auto-parallelisation approach for multiple-address space digital signal processors (DSPs). It combines a pointer conversion technique with a new modulo elimination transformation. This is followed by a combined parallelisation and addressresolution approach which maps array references without introducing message-passing. Furthermore, as DSPs do not possess any cache structure, an optimisation is presented which transforms the program to both exploit remote data locality and local memory bandwidth. This parallelisation approach is applied to the DSPstone and UTDSP benchmark suites, giving an average speedup of 3.78 on a four processor Analog Devices TigerSHARC.
['Björn Franke', "Michael F. P. O'Boyle"]
Combining program recovery, auto-parallelisation and locality analysis for C programs on multi-processor embedded systems