CPU Benchmarks

We’ll start our short look at Ubuntu’s performance with our CPU intensive benchmarks. Up first is SuperPi, a single-threaded pi-calculating benchmark. Here we time how long it takes to calculate Pi to 1 million digits.

We ran this test several times more than usual just to make sure we weren’t seeing any kind of error. The Linux version of SuperPi really is about 30% faster than the Vista version. Keep this in mind, this will be an important point later.

Meanwhile the situation for LAME is inverted. Vista outscores the Linux version by nearly 20%.

Using the cross-platform X264-based Handbreak for our video encoding test, Vista once again pulls ahead of Linux.

Once more Vista is ahead by a large margin.

From what we can tell, there’s little-if-any innate performance advantage to Vista or Linux in these benchmarks. Our working theory is that the performance difference comes down to the compiler used. Many Linux applications are compiled with GCC, while for Windows it’s either the Visual Studio compiler, or Intel’s own compiler (which is also available for Linux). There’s also a matter of compiler settings, as we saw in our quick breakout of Firefox benchmarks.

Meanwhile SuperPi uses a lot of hand-rolled code, although we’re still not sure why it’s outperforming Vista on Linux by as much as it is.

To shed a little more light on this idea of compiler performance, we have a few benchmarks of Windows application performance under Ubuntu through Wine.

Here we see a most amazing thing: Ubuntu is outperforming Windows at running Windows applications! As we’ve removed the influence of compilers the Photoshop results are particularly interesting. From what we can tell it’s normally as fast under Linux as it is Vista, however there seems to be a short gap of low-CPU usage when running it under Vista that doesn’t occur when running it under Ubuntu. As a result Ubuntu finishes a few seconds earlier.

There are a number of conditional cases that mean that applications running under Wine don’t always match or beat Windows performance, but in our tests there’s no performance hit to using Wine to run Windows applications.

These results also lend a great deal of support to the idea that there’s a significant difference in performance between the two operating systems due to their compilers. This goes particularly for the LAME benchmark, where the performance gap melts away under Wine. This is something we’re going to have to look in to in the future.

Test Setup Browser & Video Benchmarks
Comments Locked

195 Comments

View All Comments

  • jasperjones - Wednesday, August 26, 2009 - link

    I second most of Fox5's suggestion.

    1.) I've been completely ignorant of software development on Windows over the last few years. Comparison of MS Visual Studio vs Eclipse or vs Netbeans/Sun Studio? How fast are CLI C++ apps on Windows vs. Linux? Perhaps using both GNU and Intel C++ Compiler toolchains on Linux. And possibly MS Visual C++ and Intel Visual C++ on Windows.

    Perhaps less esoteric, 2.) instead of benching SMB/CIFS on Windows vs Samba on *nix, bench something *nix native such as scp/sftp or nfs. Netperf.

    3.) Number-crunching stuff. I guess this is sort of similar to running at least a few synthetic benches. LINPACK or some other test that uses BLAS or LAPACK, tests that use FFTW. Maybe even SPEC (I wouldn't expect any exciting results here, though, or are there?)
  • Eeqmcsq - Wednesday, August 26, 2009 - link

    Are you looking for benchmarks in Windows vs Ubuntu with the same hardware? Or benchmarks in different CPUs/motherboards/etc with the same Ubuntu?
  • Ryan Smith - Wednesday, August 26, 2009 - link

    Cross-platform. There's no problem coming up with Linux-only benchmarks for hardware.
  • Eeqmcsq - Wednesday, August 26, 2009 - link

    I have a question about your benchmarks that involve files, such as copying and zipping. When you run your benchmarks, do you run them multiple times and then get an average? I ask that because I have learned that in Linux, files get cached into memory, so subsequent runs will appear faster. I suspect the same thing happens in Windows. Do you take that into account by clearing cached memory before each run?
  • Ryan Smith - Wednesday, August 26, 2009 - link

    We reboot between runs to avoid cache issues (and in the case of Windows, wait for it to finish filling the SuperFetch cache).
  • fri2219 - Wednesday, August 26, 2009 - link

    I heard Sony is coming out with this thing they call a Walkman.

    You should review that next!
  • StuckMojo - Wednesday, August 26, 2009 - link

    ROFL!
  • Fox5 - Wednesday, August 26, 2009 - link

    The LTS is really for the same types of people that avoid grabbing the latest MS service pack. IE, anyone who's still running Windows XP SP2 with IE6. Do that comparison and see how they compare.

    Ubuntu is little more than a tight integration of many well-tested packages, there's no reason to go with ubuntu's LTS when everything else already goes through it's own extensive testing. Given how quickly open source software advances, I'd say the LTS is probably less stable than the most up to date versions, and certainly far behind on usability.

    You want the equivalent of Ubuntu's LTS in Windows? It most closely matches the progression that the Windows server versions follow.
  • Ryan Smith - Wednesday, August 26, 2009 - link

    To put things in perspective, 8.04 was released shortly after Vista SP1 and XP SP3 were. So Hardy vs. XP SP2 (a 4 year old SP) is a pretty poor comparison.

    You'll see an up to date comparison in part 2 when we look at 9.04.
  • awaken688 - Wednesday, August 26, 2009 - link

    I'm glad you did this article. It really has been something I think about. I'm ready to read your Part II. As others have mentioned, I have a couple of other articles that would be great.

    1) The comparison of the various versions as mentioned. SuSe, Ubuntu 9.04, BSD, etc...

    2) Someone mentioned VirtualBox. I'd love to hear more about this including a detailed setup for the normal user. I'd love to be able to surf while in Linux, but able to play games in Windows and keep them separate for added security.

    Thanks for the article! Hope to see one or both of the ideas mentioned above covered.

Log in

Don't have an account? Sign up now