Hallo,
ich habe auf einem Solaris Server eine JVM im 64-bit Modus laufen (Java6 Update 21), folgendes Problem, das ich momentan nicht ganz verstehe.
Der JVM werden folgende wichtigeren Startparameter mitgegeben:
JAVA_OPTS="-XX:MaxPermSize=512M -Xms4096m -Xmx4096m -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Xloggc:/pfad/zum/log/verzeichnis/gc.log -XX:NewSize=1024M -XX:MaxNewSize=1024M -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC"
JAVA_OPTS="$JAVA_OPTS -d64"
Im Garbage Collection Log sehe ich dann meiner Meinung nach aber nur "normale" Full GCs. Ich habe auch beobachtet, dass während eines Full GC Zyklus die Applikationsthreads angehalten werden:
503012.826: [Full GC 503012.826: [CMS: 950212K->642670K(3145728K), 21.2671501 secs] 1128352K->642670K(4089472K), [CMS Perm : 459792K->185997K(459792K)], 21.26
80455 secs] [Times: user=21.30 sys=0.03, real=21.27 secs]
Ich habe auch noch andere Server laufen (allerdings Java 5, Linux u. 32-bit System), wo bei den CMS Collections der Output z.B. so aussieht:
1792.778: [GC [1 CMS-initial-mark: 395561K(786432K)] 414372K(1015808K), 0.0444870 secs]
1792.823: [CMS-concurrent-mark-start]
1794.423: [CMS-concurrent-mark: 1.600/1.600 secs]
1794.423: [CMS-concurrent-preclean-start]
1794.425: [CMS-concurrent-preclean: 0.002/0.002 secs]
1794.427: [GC[YG occupancy: 19478 K (229376 K)]1794.427: [Rescan (parallel) , 0.0202130 secs]1794.447: [weak refs processing, 0.0395980 secs] [1CMS-remark: 395561K(786432K)] 415039K(1015808K), 0.0659470 secs]
1794.493: [CMS-concurrent-sweep-start]
1795.010: [CMS-concurrent-sweep: 0.517/0.517 secs]
1795.011: [CMS-concurrent-reset-start]
1795.065: [CMS-concurrent-reset: 0.053/0.053 secs]
Verstehe ich da was falsch bzw. hat jemand von euch eine Idee?
Danke u. lg
Bernd
ich habe auf einem Solaris Server eine JVM im 64-bit Modus laufen (Java6 Update 21), folgendes Problem, das ich momentan nicht ganz verstehe.
Der JVM werden folgende wichtigeren Startparameter mitgegeben:
JAVA_OPTS="-XX:MaxPermSize=512M -Xms4096m -Xmx4096m -XX:+PrintGCTimeStamps -XX:+PrintGCDetails -Xloggc:/pfad/zum/log/verzeichnis/gc.log -XX:NewSize=1024M -XX:MaxNewSize=1024M -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:+DisableExplicitGC"
JAVA_OPTS="$JAVA_OPTS -d64"
Im Garbage Collection Log sehe ich dann meiner Meinung nach aber nur "normale" Full GCs. Ich habe auch beobachtet, dass während eines Full GC Zyklus die Applikationsthreads angehalten werden:
503012.826: [Full GC 503012.826: [CMS: 950212K->642670K(3145728K), 21.2671501 secs] 1128352K->642670K(4089472K), [CMS Perm : 459792K->185997K(459792K)], 21.26
80455 secs] [Times: user=21.30 sys=0.03, real=21.27 secs]
Ich habe auch noch andere Server laufen (allerdings Java 5, Linux u. 32-bit System), wo bei den CMS Collections der Output z.B. so aussieht:
1792.778: [GC [1 CMS-initial-mark: 395561K(786432K)] 414372K(1015808K), 0.0444870 secs]
1792.823: [CMS-concurrent-mark-start]
1794.423: [CMS-concurrent-mark: 1.600/1.600 secs]
1794.423: [CMS-concurrent-preclean-start]
1794.425: [CMS-concurrent-preclean: 0.002/0.002 secs]
1794.427: [GC[YG occupancy: 19478 K (229376 K)]1794.427: [Rescan (parallel) , 0.0202130 secs]1794.447: [weak refs processing, 0.0395980 secs] [1CMS-remark: 395561K(786432K)] 415039K(1015808K), 0.0659470 secs]
1794.493: [CMS-concurrent-sweep-start]
1795.010: [CMS-concurrent-sweep: 0.517/0.517 secs]
1795.011: [CMS-concurrent-reset-start]
1795.065: [CMS-concurrent-reset: 0.053/0.053 secs]
Verstehe ich da was falsch bzw. hat jemand von euch eine Idee?
Danke u. lg
Bernd