2016-08-04 42 views
1

Diese Followup Frage zu G1 Collector not doing full GCFollowup: G1 Collector nicht voll GC tun

entfernt ist -XX:MaxGCPauseMillis=100 -XX:InitiatingHeapOccupancyPercent=80

Standard für IHOP ist 45%

S0C S1C S0U S1U EC EU OC OU PC PU YGC YGCT FGC FGCT GCT

0 96M 0 96M 3.4G 704M 6.5G 5.5G 640M 451.2M 6739 44.4m 0 0m 44.4m

Old Generation erreicht 5,5G in der Größe immer noch voll GC ist nicht h anhängend. Irgendeine Idee warum?

Danke, Sameer

+0

aktivieren Sie die GC-Protokollierung, geben Sie ein Protokoll ein – the8472

+0

$ 1 = gc_2016-08-05.log. 'Echo "Anwendungszeitlinie count" grep -AC "Anwendungszeit" 1 $ 727.240 echo "gestoppt Zeilenzahl" grep -AC "wurden gestoppt" $ 1 727.241 echo "Total lines" wc -l $ 1 1479213 egrep -av | $ 1> 'Anwendungszeit wurden gestoppt' other_lines.txt' –

+0

https://gist.github.com/sameergn/0935a0f50a62eb7f350975d8d2dacd40 https://gist.github.com/sameergn/ba0bd3c1a2eec5cd1e7266c710f9de95 –

Antwort

1

G1 scheint, wie es sollte zu arbeiten. Die durchschnittlichen Pausenzeiten von 763 jungen Sammlungen lagen bei 163 ms, also weit unter dem Standardpausenziel von 200 ms.

Die längste Pause betrug 373 ms, von denen 279,2 ms für die Referenzverarbeitung ausgegeben wurden. -XX:+ParallelRefProcEnabled sollte hier helfen.

Standard für IHOP ist 45%

Wenn keine festgelegt ist, das ist die anfängliche IHOP, aber es wird zur Laufzeit zu treffen andere GC Ziele dynamisch angepasst.

+0

Kein Full GC ist eine gute Sache, aber es resultiert in zu viel jungen Sammelzeiten. Wenn wir einen vollständigen GC manuell aufrufen, können Sie sehen, dass eden mehr Speicherplatz erhält, wenn der alte Speicherplatz von 4,5G auf 2,4G sinkt. https://gist.github.com/sameergn/18f4c9197701261f338bfb1eafa328a8 Mit 1.6, hatten wir 5G für Eden und 5G für alte und alte Generation Objekte verwendet, um Raum zu verhungern, jetzt ist es umgekehrt. –