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 😉
Mark Fric
4 anni fa #257333
Grazie mille per questa idea, la verificherò. Se è davvero vero, possiamo spedire la nuova build di SQ con GraalVM 🙂
Marchio
Architetto StrategyQuant
geektrader
4 anni fa #257335
Non c'è di che. Ora sono a 48 ore e continua ad andare a +15% di prestazioni e a metà della RAM che usava prima per lo stesso compito. Che incredibile JVM!
La cosa migliore è che potete scaricare e utilizzare la versione enterprise utilizzando il pulsante "TRY FROM OTN" all'indirizzo https://www.oracle.com/technetwork/graalvm/downloads/index.html e registrarsi rapidamente con Oracle. E in effetti questa versione è ancora più veloce (+20% prestazioni per me) come promesso da loro.
Gianfranco
4 anni fa #257351
Posso confermare che sqx genera circa 20% più velocemente e il programma è più reattivo.
molto OK
Gianfranco
4 anni fa #257352
stesso costruttore da 850.000 str/ora a 1.050.000 str/ora
scagnozzi
4 anni fa #257355
Buona scoperta - testando e sembra che la versione EE di graal sia più veloce
Volete diventare un algotrader redditizio? Abbiamo iniziato a utilizzare il software StrateQuant all'inizio del 2014. Ora abbiamo un grande know-how per la costruzione di EA per ogni possibile tipo di mercato. Condividiamo questo know-how, le applicazioni, gli strumenti e anche tutte le strategie finali con i trader reali. Se volete unirvi a noi, compilate il seguente modulo MODULO.
Gianfranco
4 anni fa #257356
Gianfranco
4 anni fa #257357
i7 8750 intel più 15/20% up amd ryzen 9 3900x circa meno 5/10 % .........
il mio amico dual xeon intel più circa 15/20%
geektrader
4 anni fa #257359
Sì, l'Enterprise Edition è chiaramente un po' più veloce di quella open-source (che è già molto più veloce del tipico JRE / OpenJDK). Ancora una volta, è possibile ottenere l'Enterprise Edition gratuitamente qui:
Divertitevi 🙂
Gianfranco
4 anni fa #257369
Avete lo stesso problema con le cpu intel e amd?
geektrader
4 anni fa #257375
No, non ho problemi con AMD. Sto utilizzando un AMD Ryzen 3950X overcloccato a 4,2GHz, su cui si basano le mie misurazioni come indicato nel primo post (~+20% di aumento delle prestazioni e circa 40% di memoria in meno).
geektrader
4 anni fa #257391
3 giorni di utilizzo e sono particolarmente sorpreso dall'enorme riduzione di RAM che lo stesso compito richiede in OpenJDK / JRE. Anche il vantaggio in termini di velocità sembra essere compreso tra 10% e 15%. Davvero bello!
Gianfranco
4 anni fa #257393
Csaba
4 anni fa #257394
Ciao a tutti!
@ Geektrader: Voglio ringraziarti per questo argomento! Mi sono anche reso conto che ora ho più strategie nello stesso periodo. Grazie!
Brg, Csaba
geektrader
4 anni fa #257395
Nulla da eccepire sul mio 3950X, +15% in media. Forse è un problema termico (clock della CPU più basso) dato che GraalVM utilizza AVX2. Dovresti controllare.
geektrader
4 anni fa #257396
Ciao a tutti! @ Geektrader: Voglio ringraziarvi per questo argomento! Mi sono anche reso conto che ora ho più strategie nello stesso periodo. Grazie! Brg, Csaba
Non c'è di che 🙂