The most widely deployed mobile virtualization solution
At ARM's TC3 conference in Santa Clara last month, VMware's Brad Suessmith, when asked what differentiates their offering from the competitions' (i.e. ours), claimed "[VMware] have the fastest and most secure hypervisor". Interesting . . .
I'll deal with the security issue separately, other than stating that it is pretty easy to make claims about a system's security when even the APIs are hidden behind NDAs. Sounds like security-by-obscurity to me.
How about performance? Again, it's difficult to establish, as it seems that no-one outside a small group of big companies ever got to touch VMware's MVP system, to the degree that one needs to ask whether it is more than a few demos. You can be sure that OKL4 is real—it has shipped on over 500 million handsets to date! So, we have to look at some more circumstantial evidence.
One is to look at demos. Suessmith showed MVP running multiple operating systems on a number of platforms (but none of them making any actual phone calls). One was a Coretex A8-based development system. Then he showed the same setup running on an Android Developer Phone (ADP1), the developer version of the G1. During the demo he remarked "this is only running on an ARM11 processor, so it's somewhat more sluggish".
I found this an amazingly revealing remark. I use an ADP1 as my everyday phone, and sluggish isn't the term that comes to my mind when I'm using it. In tact, it's positively slick and highly responsive. So why is the one running Android on top of MVP "sluggish"? Should that have anything to do with MVP?
Of course, there is an inevitable cost of virtualization. But for a good hypervsior, it should be so low that you don't notice it. This is the case if you run Android virtualized on OKL4 on the ADP1. We did it and measured the performance, and found it hard to find a difference. It's in the noise. So Android isn't slowed down when virtualized on OKL4. Why is it "sluggish" on MVP?
A third demo Brad showed was several virtual machines on an ARM9-based phone. In that case he didn't even bother to show any interactive app, only a slide show—not a particularly strenuous test of performance. We, of course, show multiple OSes running, virtualized on OKL4, on a real ARM9-based phone - the Motorola Evoke, that actually makes phone calls, shows videos, plays music, plays games. And all that without appearing the least bit of "sluggish". See for yourself!
So, given this sort of evidence, you should be pretty sceptical about VMware's claim of having the "fastest" mobile hypervsior. Just based on the demos, it would appear to me that the OKL4 Microvisor beats MVP hands-down on performance. Except, of course, in the OKL4 case you don't need to rely on a "demo". You can actually buy (and use) the phone!
But maybe you shouldn't trust any of this, and see for yourself. That's what some companies do. You'll have seen the announcement that ST-Ericsson selected OK Labs as their virtualization partner after "extensive evaluations". I can't tell you what they evaluated and how, but do you think they went for second-best performance?
Reality is, OK Labs has never been beaten on performance in a direct apples-to-apples beakoff. And we have no intention of ever being beaten in the future. Our track record of world-class performance goes back well over 10 years (prior to OK it was at NICTA and before that at UNSW). And you can trust we'll keep it that way.
Posted by Gernot Heiser on November 12 at 01:58 PM
About Gernot Heiser:
Gernot Heiser, Chief Technology Officer, never thought he would be in the business world. Prior to NICTA's creation in 2003, Dr Heiser was a full-time faculty member at the University of New South Wales. However, this die-hard academic couldn’t pass up the opportunity to see the commercialization of this research. Gernot still loves teaching, almost as much as he loves good wine and good food. And anyone will tell you that Gernot knows his wine.