Compute performance in the cloud - EC2 vs Azure

Even though I have a very strong Microsoft-legacy, in the past year, my preferred cloud platform has actually been EC2. The reason was simply that I somehow seemed to prefer the IaaS model over PaaS for the use-cases I've worked with during that timeframe.

Given that Windows Azure has recently introduced persistent VM targets, I've decided to run a quick test to compare the performance between similar 64bit Small-sized VMs with Ubuntu 12.04 running on Amazon's EC2 vs. Azure. (Located in Azure's European zone and in AWS' Europe-West).

I've decided to simply run a few CPU-bound tasks and chose the (rather dated, but still) hardinfo benchmark. Please keep in mind that this benchmark only tests for CPU-bound loads, but not for I/O at all.

To re-run these tests on your own machines, you can simply log in to your VMs and install the benchmark tool with "sudo apt-get install hardinfo" and then run it with "sudo hardinfo".

The Numbers

Benchmark EC2 Azure
Blowfish34.40319.975
CryptoHash39.40185.905
Fibonacci7.8923.118
N-Queens25.3029.883
FFT17.2598.486
Raytracing16.6939.862
(Shorter == Better, apart from CryptoHash for which longer==better. Small 64bit instances of Ubuntu 12.04 LTS)

Please take these tests results with a grain of salt: they were just the result of about half an hour of free time and a desire to check some of the rumors I've heard regarding EC2's comparably bad performance.

In any case: I personally think that the result warrant a lot more research into performance (and of course also I/O capabilities) of on-demand cloud platforms …

Update (June 15, 2012): I've just had the chance to look into the discrepancy for CryptoHash. Turns out that the benchmark suite uses shorter==better for all tests apart from that one for which an inverse metric is used.