Any analysis like this needs to first find a set of comparable servers that have performance parity (for the given application) first instead of merely specification parity.
Any analysis like this needs to first find a set of comparable servers that have performance parity (for the given application) first instead of merely specification parity.
You are incorrect in saying that you take an order of magnitude performance hit when Virtualization, especially for CPU bound tasks [1].
In terms of disk you are slightly more correct, you can lose substantial performance, however it's still not an order of magnitude.
[1] http://blog.xen.org/index.php/2011/11/29/baremetal-vs-xen-vs... (A series of benchmarks showing a disparity of ~1% off bare metal on CPU bound tasks.)
I understand that technically there shouldn't be much disparity for CPU bound tasks (because most instructions are translated directly), but our benchmarks show a 40x performance hit for heavily CPU bound, single threaded tasks between a large EC2 instance and an entry level softlayer dedicated box (doing computer vision work). Perhaps it's a caching issue caused by Xen and other VMs sharing the hardware or perhaps its the fact that EC2 is built on older hardware that might not support some of the more advanced CPU features. Regardless, core for core on a anecdotal level, we have seen a stunningly large impact by switching to dedicated hardware.