Publication
Proceedings of the IEEE
Paper

Advances and future challenges in binary translation and optimization

View publication

Abstract

Binary translation and optimization have achieved a high profile in recent years with projects such as the IBM DAISY open-source project, Transmeta Crusoe, HP Dynamo, Java JIT compilers such as LaTTe, and many others. Binary translation has several potential attractions: Architecture can become a layer ofsofhvare, which allows the implementation of complex legacy architecture1, s) through simple hardware and the introduction of novel new architecture and microarchitecture concepts without forcing any software changes. Secondly, binary translation enables significant soft\vare optimizations of the kind thai would push the complexity boundaries if done with hardware alone. While still in its early stages, could binary translation offer a new way to design processors, i.e., is it a disruptive technology, the term popularized by Prof. Clay ton Christensen ? This paper discusses this interesting question, examines some exciting future possibilities for binary translation, arid then gives an overview of selected projects (DAISY, Crusoe, Dynamo, and LaTTe). One future possibility for binary translation is the Virtual IT Shop. Companies such as Loudcloud currently provide computational resources as services over the Web. These services are typically implemented through large and secure server farms. If a variety of customers are to be supported, a variety of architectures (x86, PowerPC, Spare, etc.) must be present in the farm. Of necessity, the number of machines from each architecture is statically determined at present, thus limiting utilization and increasing cost. Binary translation offers a possible solution for better utilization: architecture as a layer ofsofftvare, and hence dynamic configuration of the number of machines from each architecture in such farms. The Internet is radically changing the software landscape, and is fostering platform independence and interoperability, with paradigms such as XML, SOAP, and Java. Along the lines of sofnvare convergence, recent advances in binary JIT optimizations also present the future possibility of a convergence virtual machine (CVM). CVM is similar to the Java Virtual Machine (JVM) in that both seek to facilitate a write-once, run-anywhere model of soft-ware development. However, the JVM suffers from the drawback that existing C/C++ applications and existing operating systems do not run on it. CVM aims to address the remaining research challenges in allowing the same standard OS and application object code to run on different hardware platforms, through state-of-the-art JIT compilation and virtual device emulation. copy; 2001 IEEE Publisher Item Identifier S 0018-9219(01)09690-6.

Date

Publication

Proceedings of the IEEE

Authors

Share