15% di incremento delle prestazioni e 40% di utilizzo della memoria in meno con GraalVM
82 replies
geektrader
4 anni fa #257329
Ciao 🙂
Volevo solo condividere la mia "nuova" scoperta. Come sempre, sto esplorando le possibilità di aumentare la velocità di SQX per il mio flusso di lavoro quotidiano, regolando i parametri, i garbage collector, ecc. Ultimamente sono venuto a conoscenza di GraalVMche è un compilatore JIT relativamente nuovo che ha come obiettivo le massime prestazioni e che, a volte, ha dimostrato di essere fino a 30 volte più veloce rispetto all'esecuzione di codice nei runtime standard JRE / OpenJDK che SQX sta utilizzando al momento. Qui c'è un eccellente video su come funziona, perché è stato realizzato e con alcuni test sulle prestazioni: https://www.youtube.com/watch?v=GinNxS3OSi0 Ad esempio: Twitter sta eseguendo tutte le sue attività Java su GraalVM invece che su JRE / OpenJDK da un po' di tempo e ha notato un notevole calo nell'utilizzo della CPU e della RAM.
E ora la parte migliore: usarlo con SQX è facile come scaricare l'ultimo binario di Windows da qui https://github.com/graalvm/graalvm-ce-builds/releases
È sufficiente decomprimere il file ZIP nella cartella J64 di SQX (in precedenza cancellare o rinominare la cartella) e continuare a lavorare con SQX come si è sempre fatto. Personalmente, ecco cosa ho sperimentato dopo la sostituzione e, naturalmente, utilizzando le stesse impostazioni di prima in SQX:
- circa un aumento delle prestazioni di 15% nella velocità di generazione della strategia
- circa un calo di 40% nel consumo di memoria (il che è straordinario dato che ora posso lavorare con meno RAM)
- Nessun errore o crash di SQX, funziona come con JRE / OpenJDK.
Essendo open-source, raccomando vivamente che SQX venga distribuito con GraalVM nella sua configurazione predefinita, perché sembra essere fantastico! È disponibile anche una Enterprise Edition che sembra essere ancora più veloce, ma costa 193 euro all'anno e non l'ho ancora testata.
Divertitevi a snocciolare strategie 😉
tom
1 anno fa #279832
Potete consigliarmi queste impostazioni anche per MacOS Ventura, M1 MAx, 32GB?
tom
1 anno fa #279833
Ciao ragazzi, GraalVM 22.0 è uscito e ho ottenuto un altro incremento di 5% grazie alle nuove ottimizzazioni del compilatore per i loop non contati (rispetto alla 21.3). Mi riferisco alla versione Enterprise 22.0 basata su Java 11 su: https://www.graalvm.org/downloads/ Una volta scaricati, è necessario cancellare questi file per farli funzionare correttamente: \j64\languages\nfi\builder\svm-none.jar; \j64\languages\nfi\truffle-nfi-none.jar; Per ottenere le migliori prestazioni, consiglio di lanciare SQX tramite "StrategyQuantX_nocheck.exe" e di sostituire precedentemente il file "StrategyQuantX_nocheck.config" con il seguente contenuto: opzione -XX:-ShrinkHeapInSteps opzione -XX:+UnlockExperimentalVMOptions opzione -XX:+EnableJVMCI opzione -XX:+EagerJVMCI opzione -XX:-UseJVMCINativeLibrary opzione -XX:MaxNodeLimit=100000 opzione -Dgraal.CompilerConfiguration=opzione enterprise -Dgraal.UsePriorityInlining=true opzione -Dgraal.Vectorization=true opzione -Dgraal.OptDuplication=true opzione -Dgraal.TuneInlinerExploration=1 opzione -Dgraal.LoopRotation=true
Potete consigliarmi queste impostazioni anche per MacOS Ventura, M1 MAX, 32GB?
Conmariano
1 anno fa #280211
La versione 22.3 funziona anche per me. Non è necessario cancellare i file. I aggiunto alla configurazione originale che segue:
opzione -Dgraal.CompilerConfiguration=enterprise
opzione -Dgraal.UsePriorityInlining=true
opzione -Dgraal.Vectorization=true
opzione -Dgraal.OptDuplication=true
opzione -Dgraal.TuneInlinerExploration=1
opzione -Dgraal.LoopRotation=true
Manovre automatiche con Expert Advisor
https://www.rabenesche.de
tom
1 anno fa #280582
C'è qualche ragione per cui solo la versione amd64 di Java 11 (MAC OS, M1) funziona (nemmeno aarch64)? Java 17 o 19 non funziona. A partire da Graal 23, non ci sarà più Java 11.
Ferro
1 anno fa #280696
Ciao a tutti, è proprio come questo messo nel file j64?
Gin
5 mesi fa #284715
segmento di crash del core dump
tnickel
4 mesi fa #285020
Hello, a lot of time has passed now and I would like to ask again whether anyone is using the faster GrahlVm in the current SQ 4.138?
Is it even compatible with version 4.138? And how much faster is it? Does it make sense to upgrade?
I am using Windows 10.
Tommaso
https://monitortool.jimdofree.com/