Back in the olden days (early 2007), there was one player in IaaS: Amazon Web Services (AWS). And AWS had one instance family, the M1. It was good. But as tech years move faster than dog years, the landscape has changed quickly and dramatically. There are new players — notably Azure, Google, and IBM SoftLayer — and new offerings. Even when you consider only the compute offerings of the IaaS providers, the options are vast and varied. Granted, compute is at the core of what these providers offer, and as such they look to differentiate those items. The result has been an explosion in the number of options in the compute realm of IaaS.

Because the underlying hardware and virtualization mechanisms vary among providers, apples-to-apples comparisons are not always possible. As such, in the discussion below, I will focus on describing each vendor’s offerings, with references to similarities and differences in the competing services. I will not go down the rabbit hole of pricing as it can get quite convoluted with varying pricing tiers for on-demand, spot, and preemptible instances, as well as sustained usage discounts and reserved instance pricing, enterprise license agreements, reseller discounts, and so on. I will touch on pricing at a high level, but I’ll leave the gory details for another article.

With those caveats behind us, let’s evaluate the compute offerings of AWS, Azure, Google, and IBM SoftLayer. For a high-level view of the differences (in compute, network, storage, database, analytics, and other services) among these cloud providers, check out the free .

Amazon Web Services

AWS was first to market with a cloud compute offering, and it gained a sizable head start. Today AWS Elastic Compute Cloud (EC2) has approximately 40 different instance sizes in its current generation (“instance” is the term AWS and Google use for what others call a “virtual machine,” “VM,” “virtual server,” or “VS”). The previous generations of instance types (including the aforementioned M1) are still available, although they are not “above the fold” on any AWS price sheets or product description literature. There are about 15 instance sizes in the previous generations. While they are currently fully supported, it would not be surprising if AWS looks to sunset these instance types at some point in the future.