Following on from my previous article Benchmarking Linux and FreeBSD, I decided to test the cryptographic speed of various Operating Systems (OS). For this test I used OpenSSL, which is the default cyptographic engine on Linux and FreeBSD. I had to install OpenSSL on Windows.
The versions used were (all 32 bit):
- FreeBSD 8.0-RELEASE-p2 with OpenSSL 0.9.8k
- Ubuntu 9.10 (kernel 2.6.31-19-generic) with OpenSSL 0.9.8g
- Fedora 12 (kernel 2.6.31-12-174.2.22.fc12.i686) with OpenSSL 1.0.0-fips_beta4
- Mint 8 (kernel 2.6.31-14-generic) with OpenSSL 0.9.8g
- Windows XP SP2 with OpenSSL 0.9.8h
I did cheat a little and use different computers for each of the tests, however they are all the same make, model, age and specification. I did this to save time. They are all Dell Optiplex GX280 Pentium 4, 3.2 GHz, 800MHz FSB, 1GB RAM @ 400MHz and Hyper-Threading enabled.
I tested SHA256, RSA signing and RSA verifying. SHA256 is regularly used for determining if files have changed or been corrupted. RSA is regularly used for securely transferring private keys across networks, such as before an encrypted website request, encrypted emails and financial transactions. Whether you realise it or not, you use these two algorithms everyday.
Now for the results:
Fedora has excellent results in this test, especially in the lower sized tests. However, Fedora is running a cutting edge version of OpenSSL that gives it the speed advantage. When I downgraded OpenSSL back to 0.9.8, the preformance was fairly equal to Ubuntu. However, this is the tenancy for Fedora, they prefer cutting edge software and quick introduction of new features. Of course, this leads to more bugs and perhaps less stability.
These results are very similar to the Sign test above.
Again, Fedora was very fast. However, once I downgraded OpenSSL again, the results were only around 5% better than Ubuntu.
I couldn’t get results for Windows on this test, it must have a bug in the OpenSSL port to Windows.
Mint is based on Ubuntu, so these similar results aren’t surprising.
After completing these tests, I had an opportunity to test out 64-bit FreeBSD versus 64-bit Ubuntu. The hardware was kept constant this time. These tests were run on a modern HP Elitebook 6930p laptop with Core2 Duo 2.4GHz and 2GB RAM.
As you can see, Ubuntu outperformed FreeBSD by around 10%.
Don’t get too caught up with these test results, they aren’t that important when deciding which OS to use. They are testing a specific part of the system only. That said, Linux does appear to be somewhat more efficient than FreeBSD and Microsoft Windows in these CPU intensive tests. I didn’t test OpenSolaris here, however I believe it is another fine choice that performs well.
If you need a powerhouse OS to build the next Google, Linux looks like a fine choice.