IBM's Transitive Buy Presents Interesting Server Options
Published: November 24, 2008
by Timothy Prickett Morgan
Here's a story you've heard a bunch of times: IBM liked the software so much, it bought the company. And so the story ran again last week, when Big Blue bought software emulation specialist Transitive for an undisclosed sum of money. Transitive makes a bit of software called QuickTransit, which allows applications created for one chip to be encapsulated, and run on completely different architectures.
Like so many of IBM's moves, the acquisition of Transitive appears to be both an offensive and defensive move at the same time. More on that in a bit. But first, let's review what QuickTransit was when it was launched in September 2004 and how it has been used since then.
As I explained back when I wrote my first story about the QuickTransit product back in early 2005, the technology underlying Transitive is the result of work that Alasdair Rawsthorne, a computer science professor at Manchester University who is also a processor designer well acquainted with deconstructing programs at runtime and optimizing them, started in 1995 with a bunch of students. They wanted to take a stab at the software emulation problem--running code for one system on another one with a completely different architecture--and figured out a way to modularize the emulation problem to improve performance as well as allowing support for multiple platforms. Transitive was formed in October 2000, and after three rounds of venture capital financing (bringing in $24 million), the company delivered QuickTransit in late 2004. At the time, Transitive was headquartered in Los Gatos, California, where it had seven employees, with a research and development center back in Manchester with 60 engineers. Pond Venture Partners, Manchester Technology Fund, Crescendo Ventures, Accel Partners, and Meritech Capital Partners all kicked in the dough.
At launch time back in 2004, Transitive had these four different products available, and this original list is important, since a lot of people forgot that mainframe apps were part of the plan for porting apps, and by extension, so could AS/400 midrange applications be done:
- QuickTransit for Itanium: supported MIPS, Power/PowerPC, X86, and mainframe binaries
- QuickTransit for Opteron: supported MIPS, Power/PowerPC, and mainframe binaries
- QuickTransit for X86: supported MIPS, Power/PowerPC, and mainframe binaries
- QuickTransit for Power/PowerPC: supported MIPS, X86, and mainframe binaries
The QuickTransit tool has three parts. One bit runs on the source platform where the operating system and binary applications were originally created. There is also a back-end part of QuickTransit that sits on the target platform, with its processors and operating systems. Sitting between the QuickTransit front-end and back-end is the secret sauce, an optimizer layer that translates blocks of instructions in the source platform into an intermediate form, which Transitive calls intermediate representation, or IR. The optimizer, as the name suggests, performs optimizations on these blocks of instructions and stores these routines in the cache of the target server platform. The optimizer then encodes the binaries for the new target environment and handles all of the operating system and graphics mapping calls, which allows the application to run.
In theory, QuickTransit can support any operating system that is Unix-like or Linux-like as a source application platform and move it to any other Unix-like or Linux-like platform; also, the software can move any applications (including the operating systems) that run on IBM mainframes to a Unix or Linux platform. This was in there by design. And when I asked Transitive if it could support RPG applications and their associated DB2/400 databases on a Unix or Linux platform, I was told this was absolutely possible. It is reasonable to assume that other proprietary environments--HP's MPE and OpenVMS platforms come to mind--could be emulated in a similar fashion.
Transitive has seen steady adoption of its QuickTransit tool. Most famously, QuickTransit was used in 2005 by Apple to emulate applications written for PowerPC-based Macs to run on its X64 machines. Silicon Graphics went public first, just before Apple, using QuickTransit to support applications written for Irix workstations on its Altix Itanium-Linux servers; Hewlett-Packard licensed QuickTransit to be able to run Sparc/Solaris applications in emulation mode on its ProLiant X64 servers running Linux, and Sun Microsystems did a defensive maneuver, choosing QuickTransit to port Sparc/Solaris applications to its own X64/Solaris servers. Significantly, IBM itself licensed QuickTransit, weaving it into a product called PowerVM Lx86, which came out in April of this year, allowing 32-bit X86-Linux binaries to run unchanged on Power-based AIX or Linux servers. (This tool was available as a beta under the name System p Application Virtual Environment, or PAVE, and started shipping with AIX 6.1 in November 2007.) To date, more than 16 million instances of QuickTransit are running--most of them on Apple Macs.
The Mac connection might be important. Remember how we told you a few weeks ago that IBM's top Power nerd was trying to jump ship and move to Apple? Well, IBM and Mark Papermaster have been arguing back and forth in the courts, and Steve Jobs, Apple's top dog, doesn't have the nerd he wants to help him create chips for the iPhone and iPod because IBM is worried that Papermaster's skills will help Apple in the PC and server business. And now, IBM is getting in position to buy the secret sauce behind the Mac running Power apps on Intel-based machines. Imagine if Apple was planning to create its own Power-compatible chips, having bought PA Semi, and then not needing emulation at all. . . . This may all be a coincidence, and if it is, it is surely funny just the same.
But seriously, IBM now controls the software that HP was using to attack the Sparc server base and that Sun was using to try to preserve it on X64 iron without requiring customers to do a port. While Sun has just introduced legacy Solaris containers (virtual private servers, as distinct from virtual or logical machine partitions) that allow Solaris 8 or Solaris 9 instances (including their apps and settings) to run on Sparc machines, Sun's licensed version of QuickTransit was the only way short of recompilation to get some Sparc apps written on earlier Solaris releases to move over to new Opteron or Xeon iron.
Perhaps more significantly, now IBM has a lot of leverage in which to create a set of QuickTransit pairings to move emulated applications running on just about any platform over to its Power-based servers. Transitive wanted to sell bullets to all server makers in the platform wars, and thereby make itself rich, with everyone trying to rehost everyone else's stuff. Now, IBM can point all the guns at its rivals and at the same time take their guns away. Presumably, HP, Sun, and Apple have contracts that allow them to continue using what they have, but QuickTransit will continue to evolve, supporting 64-bit Linux and other software environments, and presumably get lots of tuning to help boost performance.
IBM could also use QuickTransit to go after customers using its own legacy OS/400 and AIX platforms who have resisted, for myriad reasons, moving ahead to new iron. iSeries and System i shops wanting to make the most of IBM's new i 6.1 operating systems on Power5, Power5+, and Power6 machines have to do a program conversion to move ahead. (The AS/400 and its successors have something akin to QuickTransit, called the Technology Independent Machine Interface, or TIMI, that compiles to an intermediate, abstract computer interface, and as the underlying hardware is changed, this intermediate code is compiled down to the new iron automagically.) Older System/36 RPG II and System/38 RPG III code running in a different emulation mode could be encapsulated inside QuickTransit, allowing IBM to remove these environments from future i releases. I could even imagine IBM creating a small development environment for its i 6.1 platform that allows it to run--including its compiler tools--on a laptop. Maybe even a Mac. . . .
And even more significantly, Big Blue could use QuickTransit to do something that it was designed to do but which no one has yet done--move mainframe applications to RISC or X64 iron as a last-ditch effort to keep the customers on IBM servers. IBM could also use the software to support older 31-bit mainframe apps on newer 64-bit machines without forcing recompilation--and this could be a big deal as well.
IBM could pursue remaining Tru64 Unix customers on AlphaServers as well as OpenVMS customers on AlphaServer and Integrity boxes, too.
IBM has been vague, thus far, on its plans for QuickTransit, other than the obligatory boilerplate in the press release announcing the deal. "The company is committed to developing additional tools and solutions to make migrations even easier, while minimizing the risk and increasing the financial returns for clients as they consolidate and virtualize to achieve significant business benefit."
If the QuickTransit software works as good as it seems to, it is amazing that the company hasn't been acquired earlier. It will be interesting to see what IBM does with it--if the company bothers to admit it when it is using QuickTransit in its products.
Thanks to Convergence, i 6.1 Shops Get PAVE Linux-X86 Emulation
IBM Creates Entry PowerVM Hypervisor, Gives Rebates on Unix Gear
Transitive Rejiggers Emulation Software, Adds Partners
IBM Opens Up Beta for Future AIX 6
IBM Opens Up Beta for PAVE Linux Runtime on Power Chips
IBM Breaks Through 2,500 Linux Applications on Power Chips
IBM to Use QuickTransit to Emulate X86 Linux on Power Servers
Transitive Emulator Ports Sparc/Solaris Apps to Linux on Xeon, Itanium
Transitive Gets Backing from Intel for Porting Product
SGI Goes All the Way With Transitive Emulator
Cool Stuff: Transitive Emulates Server Platforms on Other Iron
IBM's Chiphopper Tools to Help Build iSeries Apps
OS/400 PASE Is Not Dead