ACM Home Page
Please provide us with feedback. Feedback
Dynamic scratch-pad memory management for irregular array access patterns
Full text PdfPdf (219 KB)
Source Design, Automation, and Test in Europe archive
Proceedings of the conference on Design, automation and test in Europe: Proceedings table of contents
Munich, Germany
SESSION: Code and data layout optimisations for embedded software table of contents
Pages: 931 - 936  
Year of Publication: 2006
ISBN:3-9810801-0-6
Authors
G. Chen  Pennsylvania State university, University Park, PA
O. Ozturk  Pennsylvania State university, University Park, PA
M. Kandemir  Pennsylvania State university, University Park, PA
M. Karakoy  Imperial College, London
Sponsors
: The EDA Consortium
EDAA : European Design and Automation Association
IEEE-CS\DATC : The IEEE Computer Society
Publisher
European Design and Automation Association  3001 Leuven, Belgium, Belgium
Bibliometrics
Downloads (6 Weeks): 6,   Downloads (12 Months): 44,   Citation Count: 2
Additional Information:

abstract   references   cited by   collaborative colleagues  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   

ABSTRACT

There exist many embedded applications such as those executing on set-top boxes, wireless base stations, HDTV, and mobile handsets that are structured as nested loops and benefit significantly from a software managed memory. Prior work on scratchpad memories (SPMs) focused primarily on applications with regular data access patterns. Unfortunately, some embedded applications do not fit in this category and consequently conventional SPM management schemes will fail to produce the best results for them. In this work, we propose a novel compilation strategy for data SPMs for embedded applications that exhibit irregular data access patterns. Our scheme divides the task of optimization between compiler and runtime. The compiler processes each loop nest and insert code to collect information at runtime. Then, the code is modified in such a fashion that, depending on the collected information, it dynamically chooses to use or not to use the data SPM for a given set of accesses to irregular arrays. Our results indicate that this approach is very successful with the applications that have irregular patterns and improves their execution cycles by about 54% over a state-of-the-art SPM management technique and 23% over the conventional cache memories. Also, the additional code size overhead incurred by our approach is less than 5% for all the applications tested.


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Arm11 family. http://www.arm.com/products/CPUs/families/ARM11Family.html.
 
2
Intel application processors. http://developer.intel.com/design/pca/applicationsprocessors/.
 
3
 
4
S. P. Amarasinghe, J. M. Anderson, M. S. Lam, and C. W. Tseng. The SUIF compiler for scalable parallel machines. In the Seventh SIAM Conference on Parallel Processing for Scientific Computing, Feb. 1995.
 
5
T. M. Austin and D. Burger. The simplescalar architectural research tool set. http://www.cs.wisc.edu/~mscalar/simplescalar.html.
 
6
 
7
 
8
P. Francesco, P. Marchal, D. Atienza, L. Benini, F. Catthoor, and J. M. Mendias. An integrated hardware/software approach for runtime scratchpad management. pages 238--243, 2004.
9
10
11
 
12
 
13
 
14
 
15
L. Wang, W. Tembe, and S. Pande. Optimizing on-chip memory usage through loop restructuring for embedded processors. In 9th International Conference on Compiler Construction, Mar. 2000.
 
16
17

Collaborative Colleagues:
G. Chen: colleagues
O. Ozturk: colleagues
M. Kandemir: colleagues
M. Karakoy: colleagues