Frequent loop detection using efficient nonintrusive on-chip hardware

被引:19
作者
Gordon-Ross, A [1 ]
Vahid, F [1 ]
机构
[1] Univ Calif Riverside, Dept Comp Sci, Riverside, CA 92521 USA
基金
美国国家科学基金会;
关键词
frequent value profiling; runtime profiling; on-chip profiling; hardware profiling; frequent loop detection; hot spot detection; dynamic optimization;
D O I
10.1109/TC.2005.165
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Dynamic software optimization methods are becoming increasingly popular for improving software performance and power. The first step in dynamic optimization consists of detecting frequently executed code, or "critical regions." Most previous critical region detectors have been targeted to desktop processors. We introduce a critical region detector targeted to embedded processors, with the unique features of being very size and power efficient and being completely nonintrusive to the software's execution - features needed in timing-sensitive embedded systems. Our detector not only finds the critical regions, but also determines their relative frequencies, a potentially important feature for selecting among alternative dynamic optimization methods. Our detector uses a tiny cache-like structure coupled with a small amount of logic. We provide results of extensive explorations across 19 embedded system benchmarks. We show that highly accurate results can be achieved with only a 0.02 percent power overhead, acceptable size overhead, and zero runtime overhead. Our detector is currently being used as part of a dynamic hardware/software partitioning approach, but is applicable to a wide variety of situations.
引用
收藏
页码:1203 / 1215
页数:13
相关论文
共 39 条
[1]  
AMMONS G, 1997, P SIGPLAN 97 C PROGR
[2]  
ANDERSON J, 1998, P WORKSH PROF FEEDB
[3]  
ANDERSON J, 1997, P 16 ACM S OP SYST D
[4]  
ARNOLD M, 2001, P C PROGR LANG DES I
[5]  
BALA V, 2000, P ACM SIGPLAN C PROG
[6]   OPTIMALLY PROFILING AND TRACING PROGRAMS [J].
BALL, T ;
LARUS, JR .
ACM TRANSACTIONS ON PROGRAMMING LANGUAGES AND SYSTEMS, 1994, 16 (04) :1319-1360
[7]  
BALL T, 1996, P 29 ANN INT S MICR
[8]  
BARNES RD, 2002, P MICRO
[9]  
Bellas N., 1999, Proceedings 1999 IEEE International Conference on Computer Design: VLSI in Computers and Processors (Cat. No.99CB37040), P378, DOI 10.1109/ICCD.1999.808570
[10]  
BURGER D, 2000, CSTR1308 U WISC MAD