Item Details

Leveraging Indirect Branch Locality in Dynamic Binary Translators

Dhanasekeran, Balaji; Hazelwood, Kim
Format
Report
Author
Dhanasekeran, Balaji
Hazelwood, Kim
Abstract
Dynamic Binary Translators (DBTs) have a wide range of applications like program instrumentation, dynamic opti- mization, and security. One of the main issues with DBTs is their performance overhead. A significant part of this overhead is caused by indirect branch (IB) translation. In this paper, we show that the percentage of instructions spent in translating indirect branches is as high as 50% of the total guest application�s instructions. The time spent in indirect branch translation is so high that in some ap- plications, bounding the code cache size actually results in an increased performance, since code cache flushes also remove stale indirect branch information along with the translated code. In order to improve the performance of in- direct branches, we analyze the locality of indirect branch targets and show that the locality is as high as 70%. We propose an indirect branch translation algorithm which ex- ploits this available locality. We analyze the performance of the proposed algorithm and show that the proposed al- gorithm achieves a hit rate of 73% compared to 46.5% with the default algorithm.
Language
English
Date Received
20121029
Published
University of Virginia, Department of Computer Science, 2010
Published Date
2010
Collection
Libra Open Repository
Logo for In CopyrightIn Copyright

Availability

Access Online