A New Approach to Reorganize Code Layout of Software Cache in Dynamic Binary Translator

Yunchao He,Kai Chen,Jinghui Gu,Haipeng Deng,Alei Liang,Haibing Guan
DOI: https://doi.org/10.1109/PAAP.2010.60
2010-01-01
Abstract:Dynamic Binary Translation(DBT) is widely used, but it suffers from substantial overhead. Several methods are taken to improve its performance, such as linking/chaining, building super block according to profiling and/or tracing. Reorganizing code layout of software cache can also improve performance on the ground that the execution stream will be more approximate to its control flow. Once the target code in software cache is reframed properly, hot code will be gathered together and well organized. Because of exact prediction and improved locality, the execution stream will concentrate on a small area with less control transfer. In this paper, we designed a new approach using dynamic-static combined framework to reorganize code layout of software cache. Then we compare it with another two conventional types of code layout in detail. Experimental result shows that our method can significantly cut down the overhead. The overall run time reduced by about 30% on average. Finally, we analyze the reason why reorganizing code layout can improve the performance of dynamic binary translator from several different perspectives.
What problem does this paper attempt to address?