IBM pAVEs the way for x86 Linux apps
Tackling performance and portability
Comment IBM has introduced an open beta version of the IBM System p Application Virtual Environment (System p AVE), a virtual Linux environment that enables x86-based Linux applications to run without modification on POWER processor-based IBM servers. This announcement follows the company's recent launch of three System p Web-tier servers that target the consolidation of x86 Linux workloads.
According to the company, customer orders for System p5-560Q servers sold in Q1 2007 had an average of thirty logical partitions configured for Linux. System p AVE will allow most x86 Linux binaries to run on System p as well as BladeCenter JS20 and JS21 servers that are running a Linux operating system along with nearly 2,800 Linux applications that already run natively. This expands the number of Linux workloads that can be consolidated on these servers, thereby increasing the power, cooling and space savings customers can achieve. These applications should run unmodified as the system will recognize at runtime that the application is a Linux x86 binary and automatically execute it in a p AVE environment.
System p AVE creates a virtual x86 environment and file structure, and executes x86 Linux applications by dynamically translating and mapping x86 instructions and system calls to a POWER Architecture processor-based system. Through caching techniques, application performance can actually increase the longer it executes.
IBM expects ISVs that do not currently support native Linux on POWER to be able to expand their opportunities to include POWER-based servers by leveraging existing x86 Linux binaries, media, and documentation, not needing to maintain a unique product offering for POWER technology. IBM also intends to leverage its Chiphopper program to help ISVs support System p servers with the x86 Linux version of their application. Customers and ISVs can now download and test System p AVE. IBM plans to make System p AVE generally available in the second half of 2007.
Offering binary compatibility for popular applications on multiple hardware platforms is one of the elusive holy grails of IT. During the 1990s, one such quest was making Windows-based applications available on SPARC workstations, the ill-fated Windows Application Binary Interface (WABI) offered by Sun Microsystems. Unfortunately the experience of many users who tried to use WABI was that it was limited to a small number of approved applications and as result these users found that WABI really stood for What A Bad Idea.
Another more successful endeavor to this end was the Java programming language and Just in Time (JIT) compilers that sought to eliminate the traditional binary and replace it with a transportable application that precluded the need for platform-specific compilation. While Java remains prevalent today, and has been far more successful than WABI, the performance of interpreted or JIT-based solutions is generally less than that of compiled binaries and the optimization that compilers afford the applications.
What is exciting about this announcement is that System p AVE is looking to tackle both of these issues — performance and portability —b y supporting the efficiencies inherent with compiled binaries and providing portability to another platform without requiring modification to the applications. The use of a dynamic mapping onto a different architecture shares some similarities to the JIT approach of Java; however, when caching is brought into the equation, whole chunks of code can be simply recalled and executed in mass without going through the remapping process.
Thus, for code that is executed frequently, if not continuously, performance improves over time as more of the remapped code is resident in the cache. The thought of code that runs faster the more it is executed may seem counter-intuitive, but most IT professionals would have to admit that the thought is captivating.
So for the sake of argument, let's assume that p AVE works far better than WABI did and the beta successfully matures into a commercial product. The impact on end users, ISVs, and channel partners would be significant.
Developers could continue to write Linux apps on their x86 workstations, and then take advantage of the scalability and efficiencies inherent in the POWER architecture when it comes time to deploy the app. \
ISVs would suddenly find themselves with a larger addressable market, especially in the higher end of performance needs, as they can simply deliver their existing product and expertise for another platform.
VARs and SIs now have the option of selecting from thousands of additional applications to weave into a customer solution. Lastly, Big Blue expands the potential of its highly scalable System p, and BladeCenter offerings as consolidation platforms for x86 Linux applications at both the lower and higher echelons of IT scale.
This sounds almost too good to be true; however, if it is successful, it would be quite the technical achievement and, more importantly, one with potentially significant commercial impact.