title: Why performance slows down a lot on amazon ec2?
body: <p>Not going into details of my algorithm, just giving some experiment results. For some given input, my Java sequential algorithm works 4 seconds on my laptop (Intel Core i5 430M - 2 cores, 4 threads, 2.27 GHz, 4Mb cache, 3Gb memory). Parallel version of the algorithm works 6 seconds using 1 thread, 5 seconds using 2 threads and 4 seconds using 3 threads. If I run it on amazon ec2 via ssh, time is 6 seconds for sequential and between 6 and 7 for parallel no matter how many threads.</p>
  
  <p>Why do you think it is slower? Because amazon uses virtual machines and code running there is slower? What is your experience?</p>
  
  <p>I have an application that I want to test in environments with lots of memory and computing power. Currently it is unsuccessful on amazon.</p>
  
  <p>I use plain Java Objects and <code>hppc</code> external library (high performance primitive computing library). No databases and fancy stuff.</p>
  
  <p>Instance type is c1, maybe this one (I will let you know soon if it correct, I know that it is c1, but do not know if it is medium or large):</p>
  
  <pre><code>High-CPU Extra Large Instance
  7 GiB of memory
  20 EC2 Compute Units (8 virtual cores with 2.5 EC2 Compute Units each)
  1690 GB of instance storage
  64-bit platform
  I/O Performance: High
  EBS-Optimized Available: 1000 Mbps
  API name: c1.xlarge
  </code></pre>