PP wird immer langsamer

Man kann das Laden von Kursdaten beim Programmstart auch deaktivieren. Sobald die Datei und die Anzahl der Wertpapiereinträge etwas umfangreicher wird macht das absolut Sinn. Um mal eben schnell was nachzuschauen oder gar mit einem zweiten Start nach einem Update wartet man dann nicht unnötig doppelt, ggf. machen mehrere Kursabrufe an einem Tag auch überhaupt keinen Sinn.

Aber ja, selbst ohne automatische Kursaktualisierung dauert der Ladevorgang mit wachsender Datei immer länger.

Habs mal ausgeschaltet. Geht schon etwas schneller, aber immer noch nicht gerade schnell.
Aber wann werden dann die Kurse aktualisiert?

Immer wenn du es im Menü anklickst oder den Shortcut tipst.

Vielleicht hilft es auch dem Programm zu erlauben mehr RAM zu benutzen.
Hat bei mir zumindest gefühlt geholfen.
In der PortfolioPerformance.ini die Werte für den RAM erhöhen.
Meine Werte stehen jetzt auf:
-Xms2048m
-Xmx4096m

2 Likes

aha… wo mache ich das?

@Topcgi @turbodackel @Porti @Joschilein @Jo92 @AlphaDelta

Die Einstellungen sollten in der PortfolioPerformance.ini Datei Im Hauptverzeichnis von PP liegen. Der Inhalt sollte ungefähr, je nach System und Installation, so aussehen.

-vm
plugins/name.abuchen.zulu.jre.win32.x86_64_11.0.4/jre/bin
-startup
plugins/org.eclipse.equinox.launcher_1.5.700.v20200207-2156.jar
--launcher.library
plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.1200.v20200508-1552
-vmargs
-XX:+IgnoreUnrecognizedVMOptions
--add-modules=ALL-SYSTEM
--illegal-access=permit
-XX:+UseG1GC
-XX:+UseStringDeduplication
-Xms256m
-Xmx768m

-Xms
Der -Xms legt die anfängliche und minimale Java-Heap-Größe fest. Der Java-Heap (der „Heap“) ist der Teil des Speichers, in dem Speicherblöcke Objekten zugewiesen und während der Speicherbereinigung freigegeben werden. Dieser Wert sollte nicht mehr als 25% des physisch installierten RAM’s sein.

-Xmx
Diese Option legt die maximale Größe des Java-Heapspeichers fest. Der Java-Heap (der „Heap“) ist der Teil des Speichers, in dem Speicherblöcke Objekten zugewiesen und während der Speicherbereinigung freigegeben werden. Abhängig von der Art des Betriebssystems kann der maximale Wert,für den Java-Heap festlegen werden. Dieser Wert sollte nicht mehr als 75% des physisch installierten RAM’s sein.

-Xss
-Xss legt die Thread-Stapelgröße fest. Thread-Stapel sind Speicherbereiche, die jedem Java-Thread für den internen Gebrauch zugewiesen werden. Hier speichert der Thread seinen lokalen Ausführungsstatus. Ist dieser Wert nicht festgelegt, steht dieser bei einem x86_64 System auf 128KB. Für einen x86 auf 64KB. Der Wert kann je nach Architektur abweichen.

Ich würde zusätzlich in der PortfolioPerformance.ini ganz zum Schluss, noch den -Xss -Wert einfügen.

  1. Konfigurationsbeispiel: (Win10 64bit 16GB RAM)
 -Xms4096m
 -Xmx12288m
 -Xss512k
  1. Konfigurationsbeispiel: (Win10 64bit 8GB RAM)
 -Xms2048m
 -Xmx6144m
 -Xss320k
  1. Konfigurationsbeispiel: (Win10 64bit 4GB RAM)
 -Xms1024m
 -Xmx3072m
 -Xss128k

Ihr könnt ja mal Rückinfo geben, ob die Performance besser geworden ist.

@AndreasB
Vielleicht ist es möglich, diese Werte bei der Installation die RAM-Größen auszulesen und die Konfiguration korrekt zu setzen, sowie den fehlenden -Xss-Wert einfügen? :nerd_face:

7 Likes

Und wie verhält sich das Ganze unter Mac? :sweat_smile:

Die Einstellungen für den Speicher sind gleich.
Die Datei PortfolioPerformance.ini findest du im Application Bundle von PP. Im Finder den Ordner Programme öffnen. PP suchen und dann rechte Maustaste. Paketinhalt anzeigen. Die Datei ist im Ordner Contents->Eclipse.

3 Likes

Danke, das hat funktioniert!

Bin da nicht so bewandert, kann man sich da etwas „zerschießen“?

Du kannst foch vorher eine Kopie der Datei anlegen? Quasi ein Backup?!

Diese Einstellungen haben richtig viel bewirkt. PP läuft bei mir wieder wie geschmiert.
Vielen Dank.

2 Likes

Ich habe das auch eben versucht. Ohne merklichen Unterschied. Es dauert zum Teil immer noch extrem lang. Soll ich die Werte noch mal verändern oder die alten nehmen oder…? Danke

Letztendlich bin ich zu dem Schluss gekommen das es wohl erst wirklich besser wird, wenn PP seine Daten in einer Datenbank speichern wird.

Ist leider schon nervig, wenn es mehrere Minuten dauert, wenn man die Ansicht wechselt.

moin moin,

wie wäre denn die config für 32GB?

-Xms8192m ?
-Xmx24576m ?
-Xss ??

Grüße
Beero

Seit Jahren bin ich großer Fan des Programms und nutze es täglich. Da ich viel trade, hat sich mittlerweile auch einiges an Buchungen angesammelt. Dadurch ist die Performance des Programms (nicht die Perforamnce des Depots zum Glück :wink: ) leider deutlich in den Keller gegangen.

Beispielsweise von der Vermögensaufstellung nach Performance->Berechnung mit einem Klick zu wechseln, erfordert mittlerweile 6 Sekunden Wartezeit für das Generieren der Auswertung. Für andere Bildschirme gilt das Problem nur abgeschwächt, die beiden genannten erfordern beim jeweiligen Wechseln die deutlich größte Latenz. Da das Problem mit zunehmender Zeit naturgemäß noch größer wird, möchte ich mich über eine Performance-Verbesserung des Programms anregen. Dazu sehe ich zwei mögliche Ansatzpunkte:

  1. könnte man prüfen, ob der aktuelle Programmcode numerisch unnötig viel Rechen- oder Leseaufwand erfordert. Das erscheint mir wahrscheinlich, denn zehntausende Buchungen sind es dann auch wieder nicht und ein moderner Rechner sollte eigentlich keine größeren Probleme mit der Bewältigung haben.

  2. könnte PP die beiden betroffenen Ansichten zumindest nach automatisierten Kursaktualisierungen automatisch im Hintergrund laden und cachen.
    Da das Problem aber selbst dann besteht, wenn es überhaupt keine Änderungen oder Aktualisierungen gab, wäre es auch schon hilfreich, zumindest für den Fall keinerlei Änderungen die letzte Ansicht noch im Cache zu haben.

Insgesamt sehe ich die Cache-Lösung allerdings eher als wirksames Nothilfeinstrument, die schönere Lösung wäre sicherlich ein optimierter Code. Zumindest laut Windows-Taskmanager scheint nicht die CPU-Leistung der limittierende Faktor zu sein - das könnte ein Ansatz zur Erfoschung des Engpasses sein.

1 Like

Ich hab mal ein bischen herumprobiert (Win7 64, 16GB Ram). Diese Anpassungen haben das Laden des Diagramms tatsächlich deutlich beschleunigt:

-Xms4096m
-Xmx12288m

Der Rest wurde dabei aber nicht merklich beschleunigt.

Die Einstellung Xss512k würd ich aber nicht weiterempfehlen, die hat das Laden der Berechnung sogar verlängert

6 Sekunden wäre ein Traum, also bei mir dauert es beim ersten Start der Vermögensübersicht zwischen 3-10 “MINUTEN”!

:frowning:

Das ist aber sehr untypisch! Was für ein System, wie groß ist deine Datei, verschlüsselt?