RAM-Anpassung
-
- Senior Member
- Beiträge: 158
- Registriert: 02 Apr 2008, 12:51
- Wohnort: 37434 Rhumspringe
RAM-Anpassung
Nachdem ich einige Probleme mit der 2.74 & 2.75 (diverse Abstürze von TVB und/oder Plug-ins ) hatte, bekam ich von v6ph1 eine auf 512MB gepatchte TVB-exe.
* Foren-Übersicht ‹ Deutsch / German ‹ Support ‹ Hilfe < TMark2-Plugin Fehlermeldung
Damit lief der TVB 2.75 stabil und keine Plug-in-Fehlermeldung mehr.
Meine Bitte:
- eine Anleitung für Nicht-Programmierer wie die Startdatei auf 512MB oder 768MB gepatcht wird.
- in den Einstellungen eine Möglichkeit das RAM auf 512MB oder 768MB anzupassen, da der RAM-Gebrauch bei mir Zeitweise 500MB überschreitet.
Mit freundlichem Gruß
Klaus-Werner
* Foren-Übersicht ‹ Deutsch / German ‹ Support ‹ Hilfe < TMark2-Plugin Fehlermeldung
Damit lief der TVB 2.75 stabil und keine Plug-in-Fehlermeldung mehr.
Meine Bitte:
- eine Anleitung für Nicht-Programmierer wie die Startdatei auf 512MB oder 768MB gepatcht wird.
- in den Einstellungen eine Möglichkeit das RAM auf 512MB oder 768MB anzupassen, da der RAM-Gebrauch bei mir Zeitweise 500MB überschreitet.
Mit freundlichem Gruß
Klaus-Werner
AMIGA Life for Ever
Re: RAM-Anpassung
Wie ich schon in dem anderen Thread schrieb: das machen wir nicht. Man sollte eher schauen, warum TMark bei dir so viel Speicher verballert. Das würde allen helfen .
-
- Senior Member
- Beiträge: 158
- Registriert: 02 Apr 2008, 12:51
- Wohnort: 37434 Rhumspringe
Re: RAM-Anpassung
Hallo TMark ist nicht der Übeltäter - Ich habe es mal komplett rausgenommen und trotzdem durchschnittlich ein RAM-Gebrauch 240-330MB.bodo hat geschrieben:Wie ich schon in dem anderen Thread schrieb: das machen wir nicht. Man sollte eher schauen, warum TMark bei dir so viel Speicher verballert. Das würde allen helfen .
aktivierte Plug-in´s
Bewertungen
Datenübersicht
Markierungen
MemSize
Nachrichten
Sendungsliste
Sound-Liste-bearbeiten
Timeline
Uhr
Zeitliste
z.Zt 121 Sender aktiv
nach wieder hinein-nehmen und aktivieren von TMark keine wesentliche Änderung im RAM-Gebrauch.
Für einen Tipp wie ich den RAM-Gebrauch von TVB reduziere währe ich dankbar.
Ich verwende TVB immer so wie es Online gestellt wird.
Mit freundlichem Gruß
Klaus-Werner
AMIGA Life for Ever
Re: RAM-Anpassung
Bananeweizen, sind diese Werte Normal? Ich kann das nicht einschätzen.
Re: RAM-Anpassung
Tut mir leid dir das sagen zu müssen Bodo, aber der neu TMark "verballert" nicht mehr so viel Speicher. Desshalb hatte ich die Weiterentwicklung des alten Plugins eingestellt und die Logik nochmal komplett neu implementiert. Beim alten Plugin hatte das Speicherproblem nähmlich was mit der Repräsentation der Daten zu tun, das sollte also behoben sein.bodo hat geschrieben:Man sollte eher schauen, warum TMark bei dir so viel Speicher verballert. Das würde allen helfen .
Wenn du`s selber testen möchtest: das Plugin hat eine import-Funktion für die die Regeln vom Favoriten-Plugin. Kontextmenü vom Regelbaum (linke Spalte) -> import FavPlugin. Der Import ist zwar nicht perfekt (mein Plugin sucht zB immer automatisch "Case-Insensitive") aber für einen Test sollte es ausreichen.
Re: RAM-Anpassung
also nach meiner erfahrung ist das normal, ja. ich hab als purist (mit wenigen plugins und noch weniger sendern) auch etwa so viel.bodo hat geschrieben:Bananeweizen, sind diese Werte Normal? Ich kann das nicht einschätzen.
Re: RAM-Anpassung
Bei mir sind's ca. 185MB - Laut taskmanager sind es 370MB.
57 Sender und "wenige" Plugins auf einem 64Bit-System.
Die Sache ist die, warum ich auf die Idee mit 512MB gekommen bin:
Es kommen immer wieder Probleme, die an zu wenig RAM hängen.
Und dann steigt der Verbrauch unter Windows auch nicht, wenn man die RAM-Obergrenze erhöht.
512MB ist eine Verdoppelung und sollte für alle ausreichen.
Ein weiterer Grund war für mich, dass der Verfügbare RAM in PCs heute schon ausreichend ist - 3GB sind eigentlich Minimum.
4GB sind üblich und einige (wie ich) nutzen 8GB - da sind 256MB max. mehr für TVBrowser kein Problem.
Die letzte größere RAM-Explossion gab es glaube beim Versionssprung zu 2.6, welcher mit einer deutlichen Performanceerhöhung einherging.
Jetzt etwas mehr um Probleme zu beheben sollte für jeden Verkraftbar sein.
mfg
v6ph1
PS: Klaus-Werner Willert scheint hier der Extremnutzer zu sein - vllt. sollte auch die eine Einstellung 384MB reichen - wäre mir aber etwas knapp.
57 Sender und "wenige" Plugins auf einem 64Bit-System.
Die Sache ist die, warum ich auf die Idee mit 512MB gekommen bin:
Es kommen immer wieder Probleme, die an zu wenig RAM hängen.
Und dann steigt der Verbrauch unter Windows auch nicht, wenn man die RAM-Obergrenze erhöht.
512MB ist eine Verdoppelung und sollte für alle ausreichen.
Ein weiterer Grund war für mich, dass der Verfügbare RAM in PCs heute schon ausreichend ist - 3GB sind eigentlich Minimum.
4GB sind üblich und einige (wie ich) nutzen 8GB - da sind 256MB max. mehr für TVBrowser kein Problem.
Die letzte größere RAM-Explossion gab es glaube beim Versionssprung zu 2.6, welcher mit einer deutlichen Performanceerhöhung einherging.
Jetzt etwas mehr um Probleme zu beheben sollte für jeden Verkraftbar sein.
mfg
v6ph1
PS: Klaus-Werner Willert scheint hier der Extremnutzer zu sein - vllt. sollte auch die eine Einstellung 384MB reichen - wäre mir aber etwas knapp.
-
- Site Admin
- Beiträge: 3353
- Registriert: 09 Sep 2006, 22:45
Re: RAM-Anpassung
Ich habe mir mal das MemSize-Plugin angeschaut. Und das lügt leider (salopp formuliert). Es zeigt den allokierten Speicher an, was nichts mit dem Speicherverbrauch (nach Garbage Collection) zu tun hat. Das läuft bei mir stundenlang mit einer Anzeige von 340 MB, weil einfach noch kein Garbage Collect erfolgt ist (nach dem es nur noch 110 MB sind). Die Zahlen sind dann schon besser für einen Vergleich als die aus dem Taskmanager, aber belastbar für Aussagen zum Speicherverbrauch sind sie nicht. Kann man da noch was an dem Plugin machen?
Re: RAM-Anpassung
Wenn es am GarbageCollect liegt, dass RAM-Mangel auftritt, warum lasst ihr dann nicht alle 10s oder so den GarbageCollector laufen?
Einfach "System.gc();" aufrufen - dann ist wieder RAM frei.
Alternativ vor jeder aktuallisierung des Plugins den GarbageCollector aufrufen.
mfg
v6ph1
Einfach "System.gc();" aufrufen - dann ist wieder RAM frei.
Alternativ vor jeder aktuallisierung des Plugins den GarbageCollector aufrufen.
mfg
v6ph1
Re: RAM-Anpassung
Das ist das schlimmste, was man einem Garbage-Collector antun kann. Frisst performance und wirft die schönen Algos der verschiedenen GC-Implementierungen total durcheinander.v6ph1 hat geschrieben:warum lasst ihr dann nicht alle 10s oder so den GarbageCollector laufen?
Einfach "System.gc();" aufrufen - dann ist wieder RAM frei.
Re: RAM-Anpassung
@Bananeweizen
Tja so ganz einfach ist das eben nicht in java. Da in Java Objekte eben nicht vom Programmierer sondern von System freigegeben werden existieren auch Objekte die gar nicht mehr verwendet werden real im Speicher. Erst mit der nächsten gc werden sie dort gelöscht. Um also zu erkennen welche Objekte eigendlich nicht mehr benötigt werden müsste man den Algorithmus der gc neu implementieren und ständig ausführen (was entgegen der Logik von java ist und ziemlich viel Zeit bei der Ausführung bräuchte).
Das MemSize Plugin gibt also nur die Daten an die bekannt sind, nähmlich wieviel Speicher Java gerade für das Programm benutzt. Egal ob da jetzt was sinnvolles drin steht oder nicht.
@v6ph1
Ein klassischer Trugschluss: der RAM-Mangel liegt nicht an der seltenen Ausführung der gc. Ist der Speicher voll startet Java automatisch die gc. Probleme treten erst auf wenn der Speicher danach immer noch voll ist, also wenn der Speicher wirklich real benötigt wird. Die gc alle 0.5s laufen zu lassen ist übrigens auch nicht gut. Erstens braucht es viel zu lange und zweitens eliminiert es den gc-Algorithmus.
Der einzige Vorteil von relativ viel unbenötigtem Speicher ist, das die gc seltener läuft (weil ja noch platz ist). Dadurch läuft das Program schneller.
Tja so ganz einfach ist das eben nicht in java. Da in Java Objekte eben nicht vom Programmierer sondern von System freigegeben werden existieren auch Objekte die gar nicht mehr verwendet werden real im Speicher. Erst mit der nächsten gc werden sie dort gelöscht. Um also zu erkennen welche Objekte eigendlich nicht mehr benötigt werden müsste man den Algorithmus der gc neu implementieren und ständig ausführen (was entgegen der Logik von java ist und ziemlich viel Zeit bei der Ausführung bräuchte).
Das MemSize Plugin gibt also nur die Daten an die bekannt sind, nähmlich wieviel Speicher Java gerade für das Programm benutzt. Egal ob da jetzt was sinnvolles drin steht oder nicht.
@v6ph1
Ein klassischer Trugschluss: der RAM-Mangel liegt nicht an der seltenen Ausführung der gc. Ist der Speicher voll startet Java automatisch die gc. Probleme treten erst auf wenn der Speicher danach immer noch voll ist, also wenn der Speicher wirklich real benötigt wird. Die gc alle 0.5s laufen zu lassen ist übrigens auch nicht gut. Erstens braucht es viel zu lange und zweitens eliminiert es den gc-Algorithmus.
Der einzige Vorteil von relativ viel unbenötigtem Speicher ist, das die gc seltener läuft (weil ja noch platz ist). Dadurch läuft das Program schneller.
Re: RAM-Anpassung
Ja, aber sobald die Java-VM an die Speichergrenzen stößt wird der GC aufgerufen. Gibt sogar ein "Notfallprogramm", das alles freimacht, was geht, wenn die Grenze erreicht ist. Aber trotzdem ist nicht genug Speicher frei hier bei Klaus-Werner. Ich kann mir nicht vorstellen, das wir eine App haben wollen, die 512 MB Speicher frisst "nur" für eine Fernsehzeitung .
Wie finden wir raus, was da wirklich das Problem ist?
Wie finden wir raus, was da wirklich das Problem ist?
Re: RAM-Anpassung
Knifflig. Darüber wie man den Speicherfresser im "wildlive" bei Java findet hab ich mir den Kopf zerbrochen seit ich das MemSize plugin geschrieben habe. Im Prinzip kann man ziemlich genau berechnen wieviel Speicher benötigt wird. Das Problem ist den Verbrauch einer bestimmten Quelle (einem Plugin/Package) zuzuordnen. Da hab ich bisher noch keine Lösung gefunden.
-
- Site Admin
- Beiträge: 3353
- Registriert: 09 Sep 2006, 22:45
Re: RAM-Anpassung
Das ist mir schon alles klar (immerhin habe ich in der Firma durch Tuning des Smalltalk-Garbage-Collectors die doppelte Performance aus unserer Smalltalk-VM geholt ) und das ist auch keineswegs als Kritik gemeint. Ich will nur auf folgendes hinaus: Die vom MemSize-Plugin angezeigten Daten lassen sich _nicht_ dafür benutzen, um den Speicherverbrauch des TV-Browsers beim Anwender zu ermitteln oder sogar zu vergleichen. Genau dafür wird es aber gerade in dieser (und vermutlich auch allen folgenden ähnlich gelagerten) Diskussionen genutzt.Tomas hat geschrieben:Tja so ganz einfach ist das eben nicht in java.
Das ist ungefähr so, als wenn wir unsere Stromkosten vergleichen wollen und das dann anhand der Abschlagszahlungen tun. Das hat dann zwar eine Korrelation, aber genauso wie Nach/Rückzahlungen da nicht beachtet werden, interessiert mich für Speicherdiskussionen auch der Garbage nicht. Denn auf zwei verschiedenen Rechner, die identisch konfigurierte TV-Browser verwenden, aber unterschiedlich viel RAM haben, wird das Plugin verschiedene Ausgaben haben. Einfach deswegen, weil die Allokationsstrategie verschieden ist. Meine Maschine weist der VM z.B. gerade 1,7 GB zu. Da wird in den nächsten Stunden der Speicherverbrauch noch lange ansteigen, bis mal wieder GC läuft und die "echte" Speicherlast sichtbar wird.
Wenn es technisch machbar ist, wäre deshalb z.B. eine Möglichkeit, beim Öffnen der MemSize-Anzeige einen GC zu machen, dann ist wenigstens die initiale Anzeige vergleichbar. Periodisch GCs auszuführen, halte ich auch eher für kontraproduktiv.
Re: RAM-Anpassung
Naja, ich hatte eigendlich vorgesehen wie bei eclipse so eine Button für eine manuelle gc einzubauen. Hab bis jetzt halt versucht den realen Speicherverbrauch der Plugins zu schätzen (wäre definitiv hilfreicher) und bin damit noch nicht auf einen grünen Zweig gekommen.Bananeweizen hat geschrieben:Wenn es technisch machbar ist, wäre deshalb z.B. eine Möglichkeit, beim Öffnen der MemSize-Anzeige einen GC zu machen