PP wird immer langsamer

Hallo zusammen,
ich verwende nun schon ein paar Jahre PP und betreue damit meine Depots. Mein Problem besteht hauptsächlich darin, das mittlerweile alles extrem zäh geworden ist. In meinen Depots finden jährlich ca. 600 Aktienkäufe (Sparpläne etc.) und etwa 300 Dividendenbuchungen statt.

Gibt es da irgendeine Möglichkeit / Tricks das Programm zu beschleuinigen?

VG Alex

1 Like

Hallo Alex,

geht mir auch so. Ab einer gewissen Depotgröße/Anzahl Buchungen wird es langsamer.
Ich habe folgendes zur Optimierung gemacht:

  • Bei den Wertpapieren die historischen Kurse auf ein sinnvolles Maß beschränkt. Mir reichen meist die Kurse bis 3-5 Jahre in der Vergangenheit. Reduziert schonmal die Dateigröße.
  • Alle Wertpapiere, die ich nicht mehr halte, stelle ich auf Inaktiv. Und deaktiviere den automatischen Kursabruf.
  • Wenn ich die Kurse aktualisiere, mache ich das entweder mit einer aktiven Watchlist oder Konto/Depot. Vermögensübersicht, Wertpapiere, … verlangsamen den Abruf. Da wird dann permanent gerechnet.
  • In den Ansichten nur die notwendigen Spalten konfigurieren. Je mehr Spalten, desto mehr muss gerechnet werden :slight_smile:

Programmtechnisch lässt es sich wahrscheinlich nur optimieren, wenn die Berechnungsergebnisse gecached und bei Änderungen der Daten eines Wertes neu berechnet werden. Vielleicht kann das ja auch in einem Thread im Hintergrunde vorraus berechet werden.

Bei ein paar hundert WP mit 1-12 Dividenden/Jahr, x Käufe/Verkäufe dauert die Berechnung der Werte halt etwas. Wenn wie bei mir sehr viele WP in Fremdwährung geführt werden, kommt die Umrechnung in EUR ja auch noch hinzu.

Grüße
Ulrich

2 Likes

Hallo,

ich habe ein Problem mit der Ladezeit von PP.
Gerade beim ersten start das Programms und speziell in der Vermögensübersicht oder wenn man diese aufrufen möchte, dauert es meist mehrere Minuten, bis ich weiter arbeiten kann.
Woran kann das liegen? Eventuell der Verschlüsselung oder…

Ich habe noch eine zweite Datei mit weniger Werten und Buchungen, dort geht es deutlich schnell.
Bisschen warten ist ja auch okay, falls Kurse geladen werden müssen usw. aber 5 Minuten warten, bis man weiter machen kann, nervt auf Dauer schon etwas.

Danke.

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:

8 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