Buffer and register allocation for memory space optimization - Mines Paris Accéder directement au contenu
Article Dans Une Revue The Journal of VLSI Signal Année : 2007

Buffer and register allocation for memory space optimization

Résumé

In today's embedded systems, memory hierarchy is rapidly becoming a major factor in terms of power, performance and area. This is especially true for embedded multimedia applications using temporary multi-dimensional arrays that are typically used to store intermediate results during multimedia processing. In this paper, we propose a new technique that optimizes the use of the cache and the registers. It consists in combining buffer and register allocation to reduce the size of the temporary arrays. Firstly we use the concept of live data to replace each array by a buffer of lower size. Then we replace references to these buffers by registers. The buffer allocation step keeps only useful data in memory and the register allocation step allows taking advantage of data reuse in internal loops. Codes considered in this paper are multimedia applications structured as a sequence of loop nests. The experiments are made on Unix environment and on the StepNP simulator (MPSoC platform of STMicroelctronics). They show that our technique yields significant reduction of the number of data cache and TLB misses.

Domaines

Compilation

Dates et versions

hal-00752941 , version 1 (16-11-2012)

Identifiants

Citer

Youcef Bouchebaba, Bruno Girodias, Gabriela Nicolescu, Fabien Coelho, El Mostapha Aboulhamid. Buffer and register allocation for memory space optimization. The Journal of VLSI Signal, 2007, Volume 49 Issue 1, pp.Pages 123 - 138. ⟨10.1007/s11265-006-0001-1⟩. ⟨hal-00752941⟩
126 Consultations
0 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More