A dynamite software engine

CPU translation and optimisation software now enables software written for legacy x86-based platforms to run transparently on MIPS32 and MIPS64 architectures.

Transitive Technologies’ Dynamite X/M is claimed to be the first CPU translation and optimisation software engine that enables software written for legacy x86-based platforms to run transparently on 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 able to translate from one binary ISA to another at run time, while performing significant optimisations 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 optimisation 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.’

In addition to the new product announcement, Transitive Technologies disclosed that it has joined MIPS Technologies’ MIPS Alliance Program (MAP), which provides members with sales and technical assistance as well as broad marketing support such as Internet and traditional marketing and promotional activities.

Dynamite X/M itself translates at run-time and is able to dynamically apply knowledge learned about the behavioural execution of the program. This differs from more traditional ‘static’ optimisers, 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 optimisations to that code to greatly accelerate program execution speeds. Static optimisers 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 optimising 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 optimisation to the entire executable.’

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 that will 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.

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.