VirtualBox is amazing, 50% faster than Virtual PC on my PC

It was only when Sun acquired it that I got round to trying VirtualBox, a free open source virtualization utility. I was immediately impressed, not least by its performance. It just felt snappy, something I’ve never been able to say about Microsoft’s Virtual PC, useful though it is. When I needed to set up a new virtual machine in order to do some Delphi 7 development, I decided to use VirtualBox rather than Virtual PC. Again, I’ve been very impressed. I thought it would be interesting to see if my perception of good performance would be verified by a test suite, so I dug out the PassMark suite and ran a few tests.

Note that both Virtual PC and VirtualBox can use Intel’s Virtualization Technology CPU extensions (AMD have similar extensions, but I’m running on an Intel Core 2 Quad). I ran PassMark on XP Pro with SP3, under both Virtual PC and VirtualBox, with hardware virtualization first enabled, and then disabled. I ran it full screen, with as little as possible running on the underlying OS (Vista 32-bit). PC additions were installed. Both virtual machines were given 512MB RAM. Here are the surprising (to me) results:

  • Virtual PC 2007 with hardware virtualization: 399.6
  • Virtual PC 2007 without hardware virtualization: 345.9
  • VirtualBox 1.5.6 with hardware virtualization:  542.9
  • VirtualBox 1.5.6 without hardware virtualization: 616.4

So on my machine (your results may vary) VirtualBox is faster without hardware virtualization, and more than 50% faster than the best result from Virtual PC.

I drilled into the results a little. On the CPU tests there was not a big difference; in some cases Virtual PC was ahead. On the Graphics 2D tests though, VirtualBox was dramatically faster – more than twice as fast on the GUI test, for example. It was also dramatically faster on disk I/O. For example:

Disk- Sequential Read: VirtualBox 143.4 MB per second vs Virtual PC 90.8 MB per second

Disk – Sequential Write: VirtualBox 97.4 MB per second vs Virtual PC 6.8 MB per second

I’m not surprised that this makes a big difference to perceived performance, since Windows spends much of its time reading and writing temporary files. This may also be why VirtualBox seems to start up and shut down much more quickly.

I don’t claim that my informal tests prove that VirtualBox is a faster performer in every case. Maybe there is some setting I could change that would improve Virtual PC’s speed; or maybe Virtual PC likes some hardware better than others. Still, it is a real-world experience, and enough to make me suggest that you give VirtualBox a try if you have yet to do so. By the way, both these products are free.

Finally, let me note that Vista running directly on the hardware scores a PassMark of around 1100 on this machine. Even VirtualBox is a lot slower than the real thing, as it were.

Update: If you try VirtualBox, make sure you get at least version 1.6.2 (6th June 2008), as 1.6.0 has broken networking on Windows.

SQLite with Delphi

I’ve committed some updates to the simple Delphi wrapper for SQLite. Most of the work was done by others. The main changes are to support named parameters (thanks Lukas Gebauer); and to support prepared queries for performance optimization (thanks Andrew Retmanski). I also recompiled the DLL with the current code, using Visual C++ 6.0. This actually required a small modification to the code – see http://www.sqlite.org/cvstrac/tktview?tn=3057,29. Maybe using VC 6.0 is getting impractical now.

I don’t know how many users this wrapper has, but I get regular emails about it so there are some. It is for people comfortable with raw SQL who want high performance rather than the convenience of high level database abstractions.

Update: I’ve converted the article to a WordPress page, which is easier for me to update and for tracking comments.

Technorati tags: ,

End of an era: Ninja Gaiden designer Tomonobu Itagaki departs Tecmo

He’s not happy either; he’s suing his former company:

I have filed this lawsuit with a strong intent to question the social responsibility of Tecmo Co., Ltd. and its President Yoshimi Yasuda, as well as condemning them for their unjust acts. Today, in addition to announcing the reasons for this lawsuit, I make clear my reasons for resigning.

Itagaki is an outspoken individualist so I guess this kind of drama is in character. The move is worth noting though, simply because of the exceptional quality of the Ninja Gaiden game (I’ve not yet seen Ninja Gaiden II). There were several releases of Ninja Gaiden for Xbox: the original; two major downloadable called the Hurricane Pack I and II; and Ninja Gaiden Black which added a new Mission Mode with as much play value as the game itself. The point here is that Itagaki is a perfectionist; he took a game which was already excellent and honed it over several iterations, seemingly putting the pursuit of quality ahead of commercial considerations. The Hurricane Packs were free, and Itagaki is said to have opposed ports to other platforms despite the lack of acceptance for Xbox in Japan.

To understand the game itself you have to look beyond the reviews, to things like this fan-written advanced combat guide. Known to be a challenging game, it is loved by hard core gamers for its sophisticated, nuanced combat system with huge numbers of different moves and many surprises. I know nothing like it for intense combat and replayability, though spoilt by unnecessary gore.

Ninja Gaiden II is just about to be released; it’s a shame that Itagaki won’t be around to further develop it as it did for its predecessor. Unless he makes up with Tecmo, that is.

Silverlight vs Windows Presentation Foundation

One other thing I forgot to mention in my post on Bill Gates Tech Ed keynote: Silverlight vs WPF. Someone asked Gates whether desktop applications were merging with web applications; Gates actually misunderstood the question, which he heard as whether Silverlight and WPF were being merged together. He said:

With WPF we get to assume we have the full power of the PC; we’re not just running in a browser environment … Silverlight will probably have almost everything WPF has today, but WPF will keep getting richer and richer as we go forward.

In reality, it would not surprise me if Silverlight thoroughly outshines WFP. I realise that they share a lot of technology, in particular XAML and the .NET Framework. But in many ways Silverlight is .NET done right, from a client perspective; it delivers just what is necessary for a rich client. It also runs cross-platform, a huge asset bearing in mind the increasing market share of the Mac and signs of life in desktop Linux. I’d also suggest that Silverlight will not always be restricted to the browser – look at Times Reader for proof.

In answer to the question actually asked: undoubtedly.

Missing from Bill Gates Tech Ed keynote: Live Mesh

I watched the video of Bill Gates keynote at Tech Ed yesterday. You can also read the transcript.

I enjoyed the second half more than the first. Gates can rarely resist giving a potted history of computing in his keynotes – maybe because of his own role in that history – but I find it a snooze. It also tends to reinforce the impression that Microsoft is yesterday’s company.

Gates shaped his keynote, which was on the subject of application development, around four themes:  Presentation, Business Logic, Data Access and Web Services. In presentation we got a plug for WPF and Silverlight – more the latter, with a nice demo by Soma Somasegar but nothing we haven’t seen before from Mix08 and the like.

On the business logic theme, we got a demo of a new tool called the Architecture Explorer, said by Brian Harry to be part of the Oslo wave. Microsoft will be pushing Oslo strongly at PDC later this year. Separately, I noticed that the Microsoft’s software factories guy, Jack Greenfield, has recently posted about how his team has moved from Visual Studio Team Architect to Developer and Platform Evangelism. Now I may be wrong here; but my guess is that Microsoft had a huge internal debate about whether to bet on software factories or modelling as the next step in enterprise application development, and that software factories is being sidelined in favour of Oslo. Hence statements like this:

Visual Studio Team Architect team remains actively committed to supporting Software Factories, as do the rest of Visual Studio Team System, the Visual Studio Ecosystem team and patterns & practices.

Phrases like “actively committed” usually mean the opposite of what they say. We’ll see; but note that we got Oslo in the Gates keynote, not factories.

Then we got data access, with Dave Campbell on SQL Server Data Services and the Sync framework. I think this is cool stuff; but having seen it at Mix (where I talked to Campbell and liked what he had to say) it was not new to me.

Finally,  web services. This is where Gates talks about Live Mesh, right? Wrong. Gates gave a nod to cloud computing as the future:

I can run Exchange on premise, or I can connect up to it as a service. But even at the BizTalk level, we’ll have BizTalk Services. For SQL, we’ll have SQL Server Data Services, and so you can connect up, build the database. It will be hosted in our cloud with the big, big data center, and geo-distributed automatically.

but that was it, it was on to fun robotics. I found this a surprising omission. As I see it, Mesh + Silverlight (plus of course things like SSDS) forms Microsoft’s cloud computing development platform. However, I imagine that like modelling vs software factories this is a matter of debate within the company as well as outside; perhaps we are seeing the Gates view vs the Ozzie view here.

By the way, I got my official Mesh sign-up invite this morning and I have the impression anyone can sign up now; why not try it?

Tech Ed news: Silverlight 2.0 goes live, more Oslo hype

I’m not at Tech Ed in Orlando, but was ready to watch the Bill Gates keynote which this web site tells me starts at 8.30am Eastern – trouble is, that was 45 minutes ago, and the webcast still just plays a pretty tune and then stops. Not a great way to showcase Silverlight live streaming.

Fortunately the press release has gone up. Gates has announced Silverlight 2 beta 2 (this is the one with .NET runtime included), complete with a Go Live license. Microsoft has also released Expression Blend 2.5 June 2008 Preview and Microsoft Silverlight Tools beta 2 for Visual Studio 2008, so we should be all set to code and go.

Other highlights: IE 8 Beta 2 in August, new preview code of project “Velocity” for caching high-scale apps, and more hype for Oslo, Microsoft’s “unified modeling platform”:

Oslo will include visual modeling and composition tools, a foundational repository built on SQL Server 2008 for managing application metadata, and a new, declarative modeling language to enable interoperability of models between tools and domain-specific modeling notations.

I don’t doubt that Microsoft is serious about Oslo; others at Microsoft has confirmed that this is a major initiative. However, I am naturally sceptical about whether Oslo will achieve its goals. Most other grand model-driven development products have failed; why will this be different?

Flash in PDF – breakthrough, disaster, or irrelevant?

I’m interested in opinions on the integration of Flash and PDF in Adobe Acrobat 9 – an obvious move, I guess, but nevertheless one that moves PDF away from its original speciality of print fidelity, and more towards – what? Online alternative to XHTML? Application container? Or just what it always was, but with the ability to add Flash decoration?

If I wanted to send someone a video, after the release of Acrobat 9, I might well use a PDF with embedded Flash, because I’d bet that it would play OK irrespective of the recipient’s OS. Then again, I wouldn’t email a video; I’d email a link to an URL; far more sensible. Especially since restrictive size limits are still in place for many business email users.

There are some interesting comments to Joe Wilcox’s breathless blog post on the subject. Smart documents are all very well; but distributing things that you can execute has well-known risks.

Will you use Flash embedded in PDF?

Technorati tags: , , ,

Adobe’s Acrobat.com connects with online storage, collaboration

Adobe has launched Acrobat.com, a free collaboration service now in beta. On the site, you can store up to 5GB of files, create documents with the Buzzword online word processor, share documents either with the world or with specified email addresses (the recipient must sign in with an Adobe account), and convert documents to PDF online. The PDF conversion is a trial limited to 5 documents, unless you subscribe to an online service, or buy Acrobat 9 and convert on the desktop (of course, there are plenty of other ways to convert to PDF these days). There is also an online conferencing application called Connect Now, which you can use for meetings with up to two other participants.

Connect Now is brilliant; I’m now yet convinced by the other services. Don’t get me wrong; 5GB of free online space is a fantastic offer, though it happens to be the same as Microsoft offers in Skydrive. However, everything is implemented in Flash, and this can be annoying. I find myself trying to right-click items to get a context menu; this doesn’t work, and I just get the Flash player settings menu. Right-click works OK in Google Docs, which also lets you create spreadsheets and presentations online, not just word processor documents. What is the compelling reason to use Acrobat.com, as opposed to these other services? And what is the business model – will Adobe go full tilt at the online productivity market, and offer Acrobat.com subscriptions for the Enterprise? And finance the free consumer/small biz services with advertising? I guess that is likely; but it is not good enough for those kinds of moves yet.

Connect Now on the other hand is a great conferencing system; Flash makes sense here, because it removes much of the friction that I’ve seen with other systems. You get chat; whiteboard with elegant drawing tools; webcam; shared notes; and screen sharing. The application can run with within or outside the browser. I presume it a cut down version of Connect Pro, formerly Breeze. I can see wide take-up for this; useful in its own right, and a good taster for the full version.

Screen sharing is a powerful feature, though I had a few problems on my first attempt, pretty though:

 

My second attempt worked fine.