Shinji Kuwayama

17 Feb, 2008

EC2 CPU Performance is Suspect

Posted by: Shinji Kuwayama In: Rails

Like many, I’ve been sort of infatuated with Amazon Web Services lately. My new projects almost always use S3 for backend file storage at this point; it’s not just cheaper, it’s also a simple way to segregate static files from your app servers. Overall, S3 works pretty much as advertised.

EC2, however, does _not_ work as advertised, at least from a CPU perspective.

EC2 instances come in small, medium, and large. The cost of running a “small”, or even a “large, production server, full-time, is about comparable to that of running a traditional, entry-level dedicated server. Because it’s priced per-hour, and there are no setup or termination fees, it’s a bargain.

Here’s the catch. Although Amazon advertises the EC2 processor on a small instance as “equivalent” to a “dedicated 1.7GHz Xeon”, that’s really not how it shakes out. For some reason, which I hope more expert sysadmins will eventually determine, processes on an EC2 instance will never perform at that level — that is, it’s impossible to use even 50% of the available CPU time.

It’s a hot topic in the AWS forums:
CPU performance 50% of expected
CPU Utilization below 50%

Unfortunately, discussion of these issues invariably gets bogged down in super-technical discussion of benchmarking and hardware virtualization, so the outrage is a bit slow in building.

Clear is this: if you are running a CPU-intensive application, investigate and test thoroughly before assuming that EC2 is viable for your purposes. Yes, you get loads of RAM, and a complete virtual server, which is kickass–but the CPU may significantly underwhelm you. Check it out.

Tags:

No Responses to "EC2 CPU Performance is Suspect"

Comment Form


  • Shinji Kuwayama: Exceptional does indeed have many more features than Hoptoad. I'll try it out on another project, and post my findings.
  • Eoghan McCabe: Hey Shinji. Exceptional (http://getexceptional.com/) sucks-in all your exceptions (including 404s) but sorts and manages them in a nice way. The 404s

About

View Shinji Kuwayama's profile on LinkedIn Shinji Kuwayama is a Rails developer in Chicago, Illinois.