Is permgen included in -Xmx?

2020-03-01 05:11发布

问题:

When I say -Xmx=1024m, does this include permgen i.e -XX:MaxPermSize= is taken from these 1024m or it is separate?

Looking at this I thought that it takes from 1024m, but until now I had believed they were separate.

回答1:

Nope, permGen space is in addition to main heap (latter capped via -Xmx on Sun VMs)



回答2:

Permanent generation is a separate space allocated via MaxPermSize. This is in addition to the heap set with -Xmx.

See the diagram at http://www.oracle.com/technetwork/java/gc1-4-2-135950.html#3.%20Sizing%20the%20Generations|outline "3. Sizing the Generations"

This shows the "Total Size" i.e. Xmx does not count the Permanent generation.

And by the way, JDK 1.4 is quite old. Check the JDK 1.6 options and links for an updated view: http://www.oracle.com/technetwork/java/javase/tech/vmoptions-jsp-140102.html



标签: java permgen