DocumentCode
2993067
Title
Evaluating the impact of dynamic binary translation systems on hardware cache performance
Author
Ruiz-Alvarez, Arkaitz ; Hazelwood, Kim
Author_Institution
Virginia Univ., Charlottesville, VA
fYear
2008
fDate
14-16 Sept. 2008
Firstpage
131
Lastpage
140
Abstract
Dynamic binary translation systems enable a wide range of applications such as program instrumentation, optimization, and security. DBTs use a software code cache to store previously translated instructions. The code layout in the code cache greatly differs from the code layout of the original program. This paper provides an exhaustive analysis of the performance of the instruction/trace cache and other structures of the micro-architecture while executing DBTs that focus on program instrumentation, such as DynamoRIO and Pin. We performed our evaluation along two axes. First, we directly accessed the hardware performance counters to determine actual cache miss counts. Second, we used simulation to analyze the spatial locality of the translated application. Our results show that when executing an application under the control of Pin or DynamoRIO, the icache miss counts actually increase over 2X. Surprisingly, the L2 cache and the L1 data cache show a much lower performance degradation or even break even with the native application. We also found that overall performance degradations are due to the instructions added by the DBT itself, and that these extra instructions outweigh any possible spatial locality benefits exhibited in the code cache. Our observations held regardless of the trace length, code cache size, or the presence of a hardware trace cache. These results provide a better understanding of the efficiency of current instrumentation tools and their effects on instruction/trace cache performance and other structures of the microarchitecture.
Keywords
cache storage; program interpreters; software performance evaluation; DynamoRIO; Pin; dynamic binary translation systems; hardware cache performance; program instrumentation; software code cache; Analytical models; Application software; Counting circuits; Degradation; Hardware; Instruments; Microarchitecture; Performance analysis; Performance evaluation; Security;
fLanguage
English
Publisher
ieee
Conference_Titel
Workload Characterization, 2008. IISWC 2008. IEEE International Symposium on
Conference_Location
Seattle, WA
Print_ISBN
978-1-4244-2777-2
Electronic_ISBN
978-1-4244-2778-9
Type
conf
DOI
10.1109/IISWC.2008.4636098
Filename
4636098
Link To Document