Translator runs x86 binaries on MIPS CPUs “at native speeds”
Oct 8, 2001 — by LinuxDevices Staff — from the LinuxDevices Archive — 1 viewsSan Diego, CA — (press release excerpt) — Transitive Technologies today announced the availability of Dynamite X/M, the first CPU translation and optimization software engine that enables software written for legacy x86-based platforms to run transparently on the patented, industry-standard MIPS32 and MIPS64 instruction set architectures (ISAs).
Dynamite X/M is the first product derived from Transitive's Dynamite CPU morphing software technology announced in June 2001. Dynamite is unique in its ability to translate from one binary ISA to another at run time, while performing significant optimizations on the code. The code morphing technology may improve the time to market of original equipment manufacturers (OEMs) using MIPS-based systems through eliminating timely software porting and optimization requirements.
“Next-generation set-top boxes are merging web-based capabilities with digital video broadcasting, cable and satellite technologies and personal video recorders on popular embedded operating systems. It is imminent that these systems will need to run a wide variety of software applications and plug-ins that historically were developed for x86-based systems,” said John Graham, president and CEO at Transitive Technologies. “With Dynamite X/M, we are providing access to thousands of applications that otherwise would not be available or involve significant porting costs and time-to-market.”
“We continue to see increases in demand for digital consumer devices running Web-based software,” said Kevin Meyer, vice president of marketing at MIPS Technologies. “Transitive's technology enables OEMs to easily run existing legacy applications on power-efficient MIPS-based processors, and enables MIPS Technologies to further increase user experience in Internet-connected devices such as digital set-top boxes. We welcome Transitive Technologies as the newest member of the MIPS team.”
The “x86 to MIPS” version of Dynamite opens up a number of other opportunities for Transitive. “Besides desktop-based Internet applications, there are millions of lines of code in the embedded market just aching for a modern CPU, but the source code is either long gone or never existed, (i.e., it was written in assembly code),” continued Transitive's Graham. “Trade-offs involving performance, price and power consumption often necessitate choosing carefully from among more than 100 highly-differentiated MIPS-based CPUs, ASSPs, and ASICs to address different market needs. The cost of maintaining different code trees for different target processors is non-trivial, and Dynamite X/M is an obvious solution to these problems.”
Dynamite X/M Architecture
Dynamite X/M employs both well-known and advanced proprietary dynamic translation technologies. This approach accelerates the process of translation, leaving more time to apply smart run-time optimization. Dynamite X/M translates at run-time and is able to dynamically apply knowledge learned about the behavioral execution of the program. This differs dramatically from more traditional “static” optimizers, such as those used by compilers, as it benefits from the actual performance characteristics of the program during execution, and avoids the requirement to re-compile source code. Most applications follow a “90/10 rule,” meaning that in most programs 90 percent of all software activity comes from about 10 percent of the total written code. Dynamite identifies where this 10 percent is and applies optimizations to that code to greatly accelerate program execution speeds. Static optimizers are incapable of identifying this critical 10 percent.
Modern programming techniques take tremendous advantage of modularity, reusable code and dynamically linked library routines. While these techniques help improve time-to-market, stability and reliability of code, and are easier to apply field updates, the trade-off cost is a performance hit. Programmers write most of these library routines to be very “general purpose.” It is this very “general purpose” nature that allows them to be highly reusable.
“Dynamite X/M can effectively create special cases for each routine based on how it is used during a particular run, and consequently provide significant performance enhancements,” said Alasdair Rawsthorne, chief technology officer at Transitive Technologies. “This performance enhancement is called optimizing across library boundaries. Compilers know nothing about the library routines invoked by a program other than their name since they are not linked until run-time. Since Dynamite sees the entire execution module — main routine plus libraries — it can apply optimization to the entire executable.”
Product Demonstrations and Availability
The Dynamite CPU morphing platform is modularly designed with pluggable front-ends (subject code) and back-ends (target code). This allows virtually any combination of ISA's to be paired. Dynamite X/M is the first of many products based on the Dynamite technology to be announced by the company. By the end of 2002, Transitive expects to have solutions for most of the major architecture combinations in the embedded space.
While Dynamite X/M currently runs on the Linux platform, the company is planning on supporting other embedded operating systems such as Windows CE or VxWorks in the near future. The modular architecture of Dynamite isolates any OS dependencies in a user accessible module, which allows either Transitive or the customer to easily support other operating environments.
At the Microprocessor Forum, October 15-19, Transitive plans to demonstrate Dynamite X/M. The demonstration is by appointment only and can be scheduled through Transitive's corporate headquarters.
Dynamite X/M evaluation licenses are available now with production release scheduled Dec. 1, 2001. The product is available for an up-front license fee and per unit royalty.
This article was originally published on LinuxDevices.com and has been donated to the open source community by QuinStreet Inc. Please visit LinuxToday.com for up-to-date news and articles about Linux and open source.