Abstract
Conventional optimization algorithms which are widely used in static compiler—including peephole, instruction selection, Graph coloring register allocation, and so on—cannot be effectively implemented in DBT (Dynamic Binary Translation) system since they bring too much overhead in run time.MTCrossBit is an experimental-multithreaded DBT optimization framework which utilizes an extra thread for building hot traces to test whether we can eliminate the overhead extremely caused by the algorithm itself. To make a better performance, a new threads’ communication mechanism that we call ASLC is presented.
According to the test results of SPECInt2000, we achieved some success using concurrent architecture as mentioned previously. In this paper, we illustrated that multithreaded dynamic optimization framework is an effective way to speed up DBT systems with a quantitative example.
This is a preview of subscription content, log in via an institution.
Buying options
Tax calculation will be finalised at checkout
Purchases are for personal use only
Learn about institutional subscriptionsPreview
Unable to display preview. Download preview PDF.
References
Source codes and Introduction of CrossBit, http://sourceforge.net/projects/crossbit/
Bellard, F.: QEMU, a Fast and Portable Dynamic Translator. In: Proceedings of the 2005 USENIX Annual Technical Conference (2005)
Cifuentes, C., Van Emmerik, M.: UQBT: Adaptable binary translation at low cost. IEEE Computer 33(3), 60–66 (2000)
Baraz, L., Devor, T., Etzion, O., Goldenberg, S., Skaletsky, A., Wang, Y., Zemach, Y.: IA-32 Execution Layer: A Two-phase Dynamic Translator Designed to Support IA-32 Applications on Itanium TM based Systems. In: Proceedings of the 36th Annual IEEE/ACM International Symposium on Microarchitecture, p. 191. IEEE Computer Society, Los Alamitos (2003)
Wang, C., Hu, S., Kim, H.-s., Nair, S., Breternitz Jr, M., Ying, Z., Wu, Y.: StarDBT: An Efficient Multi-platform Dynamic Binary Translation System. In: Choi, L., Paek, Y., Cho, S. (eds.) ACSAC 2007. LNCS, vol. 4697, pp. 4–15. Springer, Heidelberg (2007)
Chernoff, A., Herdeg, M., Hookway, R., Reeve, C., Rubin, N., Tye, T., Yadavalli, S.B., Yates, J.: FX!32: A Profile-Directed Binary Translator. IEEE Micro 18(2), P56–P64 (1998)
Cifuentes, C., Lewis, B., Ung, D.: Walkabout - A retargetable dynamic binary translation framework. In: The 4th Workshop on Binary Translation, Charlottesville, Virginia (2002)
Lu, J., Chen, H., Hsu, W.C., Othmer, B., Yew, P.C., Chen, D.Y.: The performance of runtime data cache prefetching in a dynamic optimization system. In: 36th International Symposium on Microarchitecture (2003)
Bala, V., Duesterwald, E., Banerjia, S.: Dynamo: A transparent dynamic optimization system. In: Proceedings of the ACM SIGPLAN Conference on Programming Language Design and Implementation (2000)
Garnett, T.: Dynamic Optimization of IA-32 Applications Under DynamoRIO. Master’s thesis, M.I.T (2003)
Zhang, W., Calder, B., Tullsen, D.M.: An event-driven multithreaded dynamic optimization framework. In: PACT 2005: Proceedings of the 14th International Conference on Parallel Architectures and Compilation Techniques, pp. 87–98. IEEE Computer Society, Washington (2005)
Huihui, S., Yi, W., Haibing, G., Alei, L.: An Intermediate Language Level Optimization Framework for Dynamic Binary Translation. ACM SIG/PLAN Notice 42(5) (2007)
Stallings, W.: Operating Systems: Internals and Design Principles, 6th edn. Prentice Hall, Englewood Cliffs (2008)
Poletto, M., Sarkar, V.: Linear scan register allocation. ACM Transactions on Programming Languages and Systems 21(5), 895–913 (1999)
Lu, J., Chen, H., Yew, P.-C., Hsu, W.-C.: Design and implementation of a lightweight dynamic optimization system. In The Journal of Instruction-Level Parallelism (2004)
Hiser, J.D., Williams, D., Hu, W., Davidson, J.W., Mars, J., Childers, B.R.: Evaluating indirect branch handling mechanisms in software dynamic translation systems. In: Proceedings of the International Symposium on Code Generation and Optimization (2007)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Li, X., Zheng, D., Ma, R., Liang, A., Guan, H. (2009). MTCrossBit: A Dynamic Binary Translation System Using Multithreaded Optimization Framework. In: Hua, A., Chang, SL. (eds) Algorithms and Architectures for Parallel Processing. ICA3PP 2009. Lecture Notes in Computer Science, vol 5574. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-03095-6_48
Download citation
DOI: https://doi.org/10.1007/978-3-642-03095-6_48
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-03094-9
Online ISBN: 978-3-642-03095-6
eBook Packages: Computer ScienceComputer Science (R0)