... the user friendly GPS tool


Thread Rating:
  • 0 Vote(s) - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
CPU-"Verbrauch" recht hoch
#1
Hallo Christian,

um einen Wanderweg von einem Führer abzutippen, war ich ca. 20 Minuten im Routeconverter 2.6 zu Gange und tat zwischenzeitlich etwas anderes.

Plötzlich fiel mir mein Lüfter auf und ich habe im Tastkmanager um die 60% CPU festgestellt. Java war der Prozess mit diesem "Verbrauch".

Nach Schließen des Routeconverters war wieder Ruhe.

Was könnte diese Idle-CPU-Zeit unter Java verursachen? Das Programm hatte nichts zu tun, ich hatte zuvor recht oft "rechte Maustaste/Insert" ausgeführt um Wegpunkte zu setzen.

Gruß, onurbi
Gruß, onurbi
Reply
#2
(01.05.2012, 23:50)onurbi Wrote: um einen Wanderweg von einem Führer abzutippen, war ich ca. 20 Minuten im Routeconverter 2.6 zu Gange und tat zwischenzeitlich etwas anderes.

Plötzlich fiel mir mein Lüfter auf und ich habe im Tastkmanager um die 60% CPU festgestellt. Java war der Prozess mit diesem "Verbrauch".

Welche Betriebssystem/Java/RouteConverter-Version benutzt Du?
Hat java.exe dauerhaft 60% CPU verbraucht?
Wieviele Kerne hat die CPU?
Welche Java-Version nutzt Du? 32 oder 64 Bit?
Beobachtest Du das Verhalten bei RouteConverter öfter?

(01.05.2012, 23:50)onurbi Wrote: Was könnte diese Idle-CPU-Zeit unter Java verursachen?

Du meinst wohl Nicht-Idle-Zeit, oder? Das ist ohne weitere Anhaltspunkte schwer zu sagen (Fragen s.o.).
--
Christian
Reply
#3
Hallo Christian,

(03.05.2012, 08:12)routeconverter Wrote: Welche Betriebssystem/Java/RouteConverter-Version benutzt Du?

Win XP Prof SP3
Java: (Build 1.6.0_31-b05)
RC: 2.6

(03.05.2012, 08:12)routeconverter Wrote: Hat java.exe dauerhaft 60% CPU verbraucht?

Nein, es ist eine sehr dynamische Kurve zwischen 30 und 70%. Nächstes Mal erstelle ich einen Screenshot.

(03.05.2012, 08:12)routeconverter Wrote: Wieviele Kerne hat die CPU?

2

(03.05.2012, 08:12)routeconverter Wrote: Welche Java-Version nutzt Du? 32 oder 64 Bit?

32 Bit

(03.05.2012, 08:12)routeconverter Wrote: Beobachtest Du das Verhalten bei RouteConverter öfter?

Mit der Version 2.6 bisher 3 Mal.
Nach ca. 30 Minuten Arbeit (Wegpunkte eintragen, löschen, verschieben, speichern) tritt der Effekt plötzlich ein. Werde den Taskmanager mal in den Vordergrund stellen, um den Übergang besser beobachten zu können.

(03.05.2012, 08:12)routeconverter Wrote: Du meinst wohl Nicht-Idle-Zeit, oder?

Das war mißverständlich formuliert. Ich meinte der RC war eigentlich Idle und hat dann aber was (noch) unbekanntes zu rödeln.

Ich halte Dich auf dem Laufenden.
Gruß, onurbi
Reply
#4
Hallo Christian,

jetzt habe ich Screenshots.

In CPU-Graph.png     habe ich die Stelle auf der Zeitachse markiert, bei der ich meine Aktivitiäten im Programm gestoppt habe.

Das Programm oder Java arbeitet dann aber noch was unbekanntes weiter.

Ein eingermaßen repräsentativer Shot (Prozessliste-nach-CPU-sortiert.png )     der Prozessliste soll zeigen, dass sonst nichts läuft. Immer ist java oben.

Das RC.log
.zip   RouteConverter.zip (Size: 20.56 KB / Downloads: 684) hänge ich auch an. RC tut danach tatsächlich nichts mehr! Vielleicht ist es ja eine Garbagecollectionaktion von Java selbst, oder so.

Auf jeden Fall hört die Belastung auf, sobald ich RC stoppe.

Vielleicht hast Du ja eine Idee.



Hier noch einen Shot nach Schließen des RC:    
Gruß, onurbi
Reply
#5
(03.05.2012, 12:14)onurbi Wrote: Das RC.log hänge ich auch an. RC tut danach tatsächlich nichts mehr! Vielleicht ist es ja eine Garbagecollectionaktion von Java selbst, oder so.

Genau das ist es: der Garbage Collection muß so häufig laufen, weil der freie Speicher knapp wird, den die Java VM nutzen kann.

(03.05.2012, 12:14)onurbi Wrote: Auf jeden Fall hört die Belastung auf, sobald ich RC stoppe.

Vielleicht hast Du ja eine Idee.

Dem Log zufolge arbeitest Du recht lang mit RouteConverter und ich glaube, daß sich dabei "Müll" ablagert, der nicht weggeräumt wird vom Garbage Collector. Ich muß analysieren, woran das liegt bzw. wo ich beim Programmieren ungewollt verhindere, daß der "Müll" übrigbleibt.

Dem Log nach fügst Du alle 10-15 Sekunden eine Position ein, zentrierst ab und zu die Karte. Ist das richtig?
--
Christian
Reply
#6
(03.05.2012, 17:55)routeconverter Wrote: Dem Log nach fügst Du alle 10-15 Sekunden eine Position ein, zentrierst ab und zu die Karte. Ist das richtig?

Ds kommt gut hin. Zentrieren tue ich zwar selten direkt, aber mir fällt auf, wenn ich unter noch nicht näher bekannten Umständen einen vorhandenen Punkt selektiere (linksklick) dann wird manchmal unvermittelt zentriert.

Gruß, onurbi
Reply
#7
(03.05.2012, 17:55)routeconverter Wrote: Dem Log zufolge arbeitest Du recht lang mit RouteConverter und ich glaube, daß sich dabei "Müll" ablagert, der nicht weggeräumt wird vom Garbage Collector. Ich muß analysieren, woran das liegt bzw. wo ich beim Programmieren ungewollt verhindere, daß der "Müll" übrigbleibt.

Ich habe gerade eben zwei Stellen gefunden, wo massiv Speicher belegt bleibt, der eigentlich freigegeben werden müßte: jedes XML-Lesen hinterließ (dank JAXB Sad) eine Menge "Müll" und jedes Laden einer Datei hinterließ die Daten der vorigen Datei im Speicher.

Bitte nimm doch beim nächsten Mal die allerneueste Vorabversion 2.7-SNAPSHOT-270, die ich gerade eben hochgeladen habe, und beobachte, ob die Speicherbedarf wieder gen 130-140 MByte strebt oder kleiner bleibt.
--
Christian
Reply
#8
(05.05.2012, 14:02)routeconverter Wrote: Ich habe gerade eben zwei Stellen gefunden, wo massiv Speicher belegt bleibt, der eigentlich freigegeben werden müßte: jedes XML-Lesen hinterließ (dank JAXB Sad) eine Menge "Müll" und jedes Laden einer Datei hinterließ die Daten der vorigen Datei im Speicher.

Sherlock Holmes war wieder erfolgreich! Cool

(05.05.2012, 14:02)routeconverter Wrote: Bitte nimm doch beim nächsten Mal die allerneueste Vorabversion 2.7-SNAPSHOT-270, die ich gerade eben hochgeladen habe, und beobachte, ob die Speicherbedarf wieder gen 130-140 MByte strebt oder kleiner bleibt.

Klar teste ich asap. Kann aber morgen werden!

Gruß, onurbi
Reply
#9
(05.05.2012, 14:42)onurbi Wrote: Klar teste ich asap. Kann aber morgen werden!

Keine Eile, die Speicherlöcher gibt es schon immer.
--
Christian
Reply
#10
(05.05.2012, 15:13)routeconverter Wrote: Keine Eile, die Speicherlöcher gibt es schon immer.

Wink

Gruß, onurbi
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)