title: Java OutOfMemoryError in Windows Azure Virtual Machine
body: <p>When I run my Java applications on a Window Azure's <code>Ubuntu 12.04 VM</code>, 
  with 4 by 1.6GHZ core and 7G RAM, I get the following out of memory error after a few minutes.</p>
  
  <blockquote>
    <p>java.lang.OutOfMemoryError: GC overhead limit exceeded</p>
  </blockquote>
  
  <p>I have a swap size of 15G byte, and the max heap size is set to 2G.  I am using a Oracle Java 1.6. Increase the max heap size only delays the out of memory error. 
  It seems the JVM is not doing garbage collection.</p>
  
  <p>However, when I run the above Java application on my local Windows 8 PC (core i7) , with the same JVM parameters,  it runs fine. The heap size never exceed 1G. </p>
  
  <p>Is there any extra setting on Windows Azure linux VM for running Java apps ?</p>