0

I have read some articles about Amazon's Web Services and am interested in:

  1. Knowing exactly what I am getting (maybe some equivalent terms to a physical machine would be helpful)
  2. The "performance" compared to I guess my own machine or other widely available options.

That being said, I have an intel i7 processor with 8 cores, 2GB of RAM per core. I also do not know much about hardware, distributed computing and parallel computation.

I will be working with large datasets and applying algorithms to these large datasets. Anyway, here are the two articles I read which address these questions: Article1 and Article2.

I do not really know all the terms in the articles but it seems that the best I can get is not much better than my own machine. The simplest test I did (which greatly disappointed me) was to start an instance on EC2, run python and create a large barabasi graph via networkx (a graph library). I forget the actual size but my machine completed the task in about a minute, while EC2 had to shut the process down. So much for high performance computing...

It is also likely that I am missing the big idea in my usage or thoughts about Amazon EC2. Please let me know and thanks in advance!

EDIT: To clarify I am interested in computing power. Will I be able to process my large datasets more effectively (in less time)?

3
  • What problem do you think EC2 is suppose to solve exactly? You are trying to compare your home computer to virtual hardware which is an unfair comparison
    – Ramhound
    Aug 28, 2013 at 19:26
  • For one EC2 gives you computing power without the need to buy hardware, maintain hardware, arrange a server room with cooling. You can also access it from anywhere. None of these are about calculating power pur sang, but those parts are important.
    – Hennes
    Aug 28, 2013 at 19:39
  • Checkout my edit. I am solely interested in computing performance. Will I be able to process my large datasets more effectively (faster)? Aug 28, 2013 at 20:51

1 Answer 1

3

Amazon clearly states on their EC2 Page and their Instance Types Page what the stats of each machine is.

For example the free tier you likely tried out and was not impressed with the performance with is a "micro instance"

Micro Instance 613 MiB of memory, up to 2 ECUs (for short periodic bursts), EBS storage only, 32-bit or 64-bit platform

Now there is one translation we need to do ECUs to actual processing power

EC2 Compute Unit (ECU) – One EC2 Compute Unit (ECU) provides the equivalent CPU capacity of a 1.0-1.2 GHz 2007 Opteron or 2007 Xeon processor.

So the machine you tested it on was a computer with 2.0-2.4 GHz (but only for short periodic bursts) that only had 613 MiB of RAM.

The ram is likely the thing that killed your performance. Your machine had triple the ram the EC2 machine did and had 8 cores (and likely running faster than the bursting speed of the EC2 instance) compared to the EC2 machines 1 core.


Now compare this to the "High-Memory Quadruple Extra Large Instance"

High-Memory Quadruple Extra Large Instance 68.4 GiB of memory, 26 EC2 Compute Units (8 virtual cores with 3.25 EC2 Compute Units each), 1690 GB of local instance storage, 64-bit platform

So now we have a machine that has 68.4 gigs of RAM compared to your 8, and has 8 cores (same as you) and running at 3.25 to 3.9 Ghz.

This machine will likely beat your machine doing the same task.


Now, why use EC2? What if you wanted to run 20 copies of your test at the same time, at home you would need to buy 19 more machines (lets say $1000 per machine), so you would need to spend $19000 now and when you are done you have servers you don't need any more not doing anything at all.

By using EC2, you could rent 20 servers and only pay for 1 hour of usage. At $1.00 per hour rate for the High-Memory Quadruple Extra Large Instance it would only cost you $20.

1

Not the answer you're looking for? Browse other questions tagged .