2017-02-22 3 views
1

Ich habe gctrace Ausgang, der wie folgt aussieht:Lesen Go gctrace Ausgang

gc 6 @48.155s 15%: 0.093+12360+0.32 ms clock, 0.18+7720/21356/3615+0.65 ms cpu, 11039->13278->6876 MB, 14183 MB goal, 8 P 

Ich bin nicht sicher, wie die CPU-Zeiten insbesondere zu lesen. Ich verstehe, dass es in drei Phasen unterteilt ist (STW Sweep Termination, gleichzeitige Markierung/Scan und STW Mark Terminierung), aber ich bin mir nicht sicher, was die + Zeichen bedeuten (d. H. 0.18+7720 und 3615+0.65). Was bedeuten diese + Zeichen?

Antwort

1

In Ihrem Fall sehen sie aus wie Assist und Terminierungszeiten;

// CPU time 
0.18 : **STW** Sweep termination. 
7720ms : Mark/Scan - Assist Time (GC performed in line with allocation). 
21356ms : Mark/Scan - Background GC time. 
3615ms : Mark/Scan - Idle GC time. 
0.65ms : **STW** Mark termination. 

Ich denke, es ändert (oder es kann) über verschiedene Go-Versionen und Sie können detailliertere Informationen zu runtime package docs finden.

Currently, it is: 
    gC# @#s #%: #+#+# ms clock, #+#/#/#+# ms cpu, #->#-># MB, # MB goal, # P 
where the fields are as follows: 
    gC#  the GC number, incremented at each GC 
    @#s   time in seconds since program start 
    #%   percentage of time spent in GC since program start 
    #+...+#  wall-clock/CPU times for the phases of the GC 
    #->#-># MB heap size at GC start, at GC end, and live heap 
    # MB goal goal heap size 
    # P   number of processors used 

Beispiel here

Siehe auch Interpreting GC trace output

gc 6 @48.155s 15%: 0.093+12360+0.32 ms clock, 
0.18+7720/21356/3615+0.65 ms cpu, 11039->13278->6876 MB, 14183 MB goal, 8 P 
  • gc 6
  • @ 48.155s seit Programmstart
  • 15%: Zeit in GC seit Programm ausgegeben
  • 0,093 + 12360 + 0,32 ms Takt stop-the-world (STW) Sweep Beendigung + gleichzeitige Marke und Scan + und STW Zeichen Beendigung
  • starten 0,18 + 7720/21356/3615 + 0,65 ms CPU (GC in Linie mit Zuteilung durchgeführt wird), Hintergrund GC Zeit und Leerlauf GC Zeit
  • 11039-> 13278-> 6876 MB Heap-Größe bei GC Start, am GC-Ende und Live-Heap
  • 8 P Anzahl der verwendeten Prozessoren