Wie lange dauert das Berechnen von beibehaltenen Größen in Visual VM für einen 1-GB-Heap?

8

Ich habe einen 1-GB-Heapspeicherauszug von einem Java-Prozess, der keinen Heapspeicher mehr hat. Ich habe den Heap in jivalm hochgeladen, der mit einer java6-Distribution ausgeliefert wird. Ich habe den Prozess "requested stitches" vor etwa 16 Stunden gestartet und läuft noch. Wie lange sollte es dauern, die retentionierten Größen für die ersten 20 Objekte auf einem 1-GB-Heap auszuführen? Sollte ich erwarten, dass es jemals endet?

    
Joe 29.11.2011, 18:44
quelle

2 Antworten

4

Es scheint auch ewig dauern auf meiner Maschine, aber ich bemerkte von der Taskmanager, dass nichts mehr zu passieren schien (niedrige CPU-Auslastung, Disk I / O). Der Grund dafür war, dass die Aktion trotz der Fortschrittsanzeige weiterhin eine Animation zeigte, die gemäß der Protokolldatei stillgelegt wurde.

Um das Protokoll zu öffnen, habe ich folgende Schritte ausgeführt:

  • Klicken Sie auf Hilfe
  • Klicken Sie auf Über
  • Klicken Sie auf Logfile

Dies zeigte mir am Ende des Protokolls:

%Vor%

Standardmäßig ist meine 64-Bit Java VM Heapsize auf 25% meines Computerspeichers begrenzt (oder sogar auf ein viel niedrigeres VisualVM-Built-in-Limit). Um dieses Problem für meinen nächsten Versuch zu lösen, werde ich versuchen, VisualVM wieder wie folgt zu starten:

%Vor%

Danach zeigt das Protokoll beim Start:

%Vor%     
JohannesB 29.11.2016 15:21
quelle
1

Ich hatte einen 600-MB-Heap, der nur 900 CPU-Minuten benötigte, um die verbleibenden Größen zu berechnen. Das sind 15 Stunden. Ich nehme an, dass es sehr verwandt ist mit dem, was auf dem Heap ist, also werde ich nicht auf Ihren Heap extrapolieren (auch Sie haben darauf hingewiesen, dass es nicht fertig ist;), aber es ist ein weiterer Datenpunkt.

    
Rob I 17.01.2012 13:54
quelle

Tags und Links