EMBARC: An efficient memory bank assignment algorithm for retargetable compilers

被引:6
作者
Hiser, JD [1 ]
Davidson, JW [1 ]
机构
[1] Univ Virginia, Sch Engn, Dept Comp Sci, Charlottesville, VA 22903 USA
关键词
management; measurement; performance; experimentation; standardization; partition assignment; retargetable compilers; embedded systems;
D O I
10.1145/998300.997190
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Many architectures today, especially embedded systems, have multiple memory partitions, each with potentially different performance and energy characteristics. To meet the strict time-to-market requirements of systems containing these chips, compilers require retargetable alogrithms for effectively assigning values to the memory partitions. The EMBARC algorithm described in this paper is the first algorithm to attempt to realize a comprehensive, retargetable algorithm for effective partition assignment of variables in an arbitrary memory hierarchy. It supports a wide variety of memory models including on-chip SRAMs, multiple layers of caches, and even uncached DRAM partitions. Even though it is designed to handle such a range of memory hierarchies, EMBARC is capable of generating partition assignments of similar quality to algorithms designed for specific memory hierarchies. We use a large range of benchmarks and memory models to demonstrate the effectiveness of the EMBARC algorithm. We found that EMBARC can achieve 99% of the improvement of a dedicated algorithm for cacheless systems without SRAM. Also, for cacheless systems with SRAM, EMBARC generated the optimal partition assignment for benchmarks that were simple enough to hand-generate an optimal partition assignment. As further proof of EMBARC's generality, we also show how EMBARC can be used to generate partition assignments for a memory hierarchies with two on-chip caches that can be accessed in parallel.
引用
收藏
页码:182 / 191
页数:10
相关论文
共 16 条
[1]  
[Anonymous], 1996, CSTR19961308 U WISC
[2]  
[Anonymous], 2000, P INT C COMPILERS AR
[3]  
[Anonymous], 2001, P 2001 INT C COMP AR
[4]  
AVISSAR O, 2002, ACM T EMBED COMPUT S, V1, P6, DOI DOI 10.1145/581888.581891
[5]  
Banakar R, 2002, CODES 2002: PROCEEDINGS OF THE TENTH INTERNATIONAL SYMPOSIUM ON HARDWARE/SOFTWARE CODESIGN, P73, DOI 10.1109/CODES.2002.1003604
[6]  
BENITEZ ME, 1988, P SIGPLAN 88 C PROGR, P329
[7]  
Brooks D, 2000, PROCEEDING OF THE 27TH INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE, P83, DOI [10.1145/342001.339657, 10.1109/ISCA.2000.854380]
[8]  
GUTHAUS MR, FREE COMMERCIALLY RE
[9]  
Kandemir M, 2001, DES AUT CON, P690, DOI 10.1109/DAC.2001.935595
[10]  
LEE S, 2003, P 7 INT WORKSH SOFTW