Item Details

Leveraging Indirect Branch Locality in Dynamic Binary Translators

Dhanasekeran, Balaji; Hazelwood, Kim
Dhanasekeran, Balaji
Hazelwood, Kim
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.
Date Received
University of Virginia, Department of Computer Science, 2010
Published Date
Libra Open Repository
Logo for In CopyrightIn Copyright


Access Online