DOI: 10.2298/CSIS100327022M
Code Cache Management Based on Working Set in Dynamic Binary Translator
- Shanghai key laboratory of scalable computing and systems, Department of Computer Science and Engineering
Shanghai Jiao Tong University, Shanghai, 200240, China
{ruhuima, hbguan, ezzhu, yongqianggao, liangalei}@sjtu.edu.cn
Abstract
Software code cache employed to store translated or optimized codes, amortizes the overhead of dynamic binary translation via reusing of stored-altered copies of original program instructions. Though many conventional code cache managements, such as Flush, Least-Recently Used (LRU), have been applied on some classic dynamic binary translators, actually they are so unsophisticated yet unadaptable that it not only brings additional unnecessary overhead, but also wastes much cache space, since there exist several noticeable features in software code cache, unlike pages in memory. Consequently, this paper presents two novel alternative cache schemes—SCC (Static Code Cache) and DCC (Dynamic Code Cache) based on working set. In these new schemes, we utilize translation rate to judge working set. To evaluate these new replacement policies, we implement them on dynamic binary translator—CrossBit with several commonplace code cache managements. Through the experiment results based on benchmark SPECint 2000, we achieve better performance improvement and cache space utilization ratio.
Key words
Code cache management, Working set, Replacement strategy, Code block, Bounded code cache
Digital Object Identifier (DOI)
https://doi.org/10.2298/CSIS100327022M
Publication information
Volume 8, Issue 3 (June 2011)
Year of Publication: 2011
ISSN: 2406-1018 (Online)
Publisher: ComSIS Consortium
Full text
Available in PDF
Portable Document Format
How to cite
Ma, R., Ni, Z., Zhu, E., Chen, K., Guan, H.: Code Cache Management Based on Working Set in Dynamic Binary Translator. Computer Science and Information Systems, Vol. 8, No. 3, 653-671. (2011), https://doi.org/10.2298/CSIS100327022M