Skip to Main content Skip to Navigation
Journal articles

Buffer and register allocation for memory space optimization

Abstract : 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.
Document type :
Journal articles
Complete list of metadata

https://hal-mines-paristech.archives-ouvertes.fr/hal-00752941
Contributor : Claire Medrala <>
Submitted on : Friday, November 16, 2012 - 4:54:15 PM
Last modification on : Thursday, September 24, 2020 - 4:36:04 PM

Links full text

Identifiers

Citation

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

Share

Metrics

Record views

357