Die JVM-Optionen: fast 20 MB Speicher für die JVM-HeapWarum ist der JVM-Gesamtspeicher größer als -Xmx?
-Xms20M -Xmx20M -Xmn10M -XX:+PrintGCDetails -XX:SurvivorRatio=8
Wie erwartet, wird die JVM zuordnen.
Aber finden Sie im folgenden GC Detail:
PSYoungGen insgesamt 9216K, verwendet 4612K [0x00000000ff600000, 0x0000000100000000, 0x0000000100000000)
eden Raum 8192K, 56% verwendet [0x00000000ff600000,0x00000000ffa812d8,0x00000000ffe00000)
vom Raum 1024K, 0% [0x00000000fff00000,0x00000000fff00000,0x0000000100000000)
verwendet s Schritt 1024K, 0% [0x00000000ffe00000,0x00000000ffe00000,0x00000000fff00000)
PSOldGen Gesamt 10240K, verwendet 8192K [0x00000000fec00000, 0x00000000ff600000, 0x00000000ff600000)
Objektraum 10240K, 80% verwendet [0x00000000fec00000,0x00000000ff400020,0x00000000ff600000) PSPermGen verwendet Gesamt 21248K, verwendet 3033K [0x00000000f9a00000, 0x00000000faec0000, 0x00000000fec00000)
Objektraum 21248K, verwendet 14% [0x00000000f9a00000,0x00000000f9cf6708,0x00000000faec0000)
die Größe der junge Generation ist wie erwartet für die Option -Xmn
. Das Verhältnis von Größe für eden Raum und Survivor Spaces in der jungen Generation wie für die Option -XX:SurvivorRatio=8
erwarten ist. Aber scheint es insgesamt die JVM fast 40MB Speicher zugeordnet, so ist es seltsam. Warum ist der JVM-Gesamtspeicher größer als -Xmx
?
Env:
OS: win7 64 bit
JDK: build 1.6.0_43-b01 64bit
bedeutet also, dass der Haufen in zwei Generationen unterteilt ist: YoungGen und OldGen, enthält nicht das PermGen? –
@LipingHuang Ja, das ist richtig. Der Haufen ist unterteilt in die * junge Generation *, 'PSYoungGen' und die * alte Generation *, 'PSOldGen'. Der Heap enthält nicht die * permanente Generation *, 'PSPermGen'. "PS" steht übrigens für * parallel scavenge collector * (aktiviert mit '-XX: UseParallelGC'). – DontDivideByZero
@LipingHuang Die * junge Generation * ist weiter unterteilt in * eden space * und zwei * survivor spaces *, bekannt als * from space * und * to space *.Allerdings ** trägt nur einer der * Überlebendenräume * zur angegebenen Größe der * jungen Generation *** bei, wie hier [http://stackoverflow.com/q/28347161/3460717] diskutiert. – DontDivideByZero