Execution Time and Code Size Optimization Using Multidimensional Retiming and Loop Striping

Yaroub Elloumi, Mohamed Akil, Mohamed Hédi Bedoui · 2013

Nested loops present the most critical sections in several embedded real-time applications. To attain a higher performance, several optimization techniques are employed in order to increase parallelism. However, due to the tight requirements, they are either unable to achieve any execution time constraint or achieve it with a high code size, which presents an implementation limiting factor. In this paper, we propose a novel optimization approach that combines two techniques which are the delayed multidimensional retiming and the loop striping. It explores the solution space, which is composed by all parallelism cases proposed by both techniques, in order to provide the implementation that achieves the execution time constraint while using a lower code size which has not been attained by the other two techniques. We propose the theory of combining both techniques and efficient algorithms of selecting the parallelism transformations. The experimental results show that our optimization approach achieves execution times where each technique can not. Moreover, even if they can, it presents average improvements on the code size of 35.21% compared to the delayed multidimensional retiming and 16.38% compared to the loop striping.

Read the paper · More papers on PaperTik