Risposta

Elaborazione 1TP9 parallela per la formazione e la generazione genetica

10 risposte

kainc301

Cliente, bbp_partecipante, comunità, 54 risposte.

Visita il profilo

4 anni fa #247191

Ciao a tutti. Da quanto ho capito, il team SQ ha apportato molti miglioramenti alla velocità di SQX, tra cui il calcolo parallelo per le simulazioni Monte Carlo e WFO.

Tuttavia, è possibile utilizzare il calcolo parallelo per l'addestramento genetico e la generazione casuale? Presumo che questo renderebbe il processo molto più veloce per le CPU a più alto numero di core.

Inoltre, ho visto che l'accelerazione GPU per i calcoli è nell'elenco delle attività da svolgere in seguito. Ma da quello che ho capito, l'unico modo in cui il calcolo via GPU può aiutare la velocità di costruzione delle strategie è se la costruzione e l'addestramento vengono eseguiti con l'elaborazione in parallelo. Voglio investire in GPU di qualità superiore da utilizzare con la mia macchina per SQX quando questa funzione sarà disponibile, ma volevo essere sicuro che avrebbe effettivamente migliorato la velocità di costruzione e formazione delle strategie.

Ho visto che l'accelerazione delle GPU migliora la velocità di formazione dei modelli di apprendimento automatico di ordini di grandezza. Lo stesso potrebbe essere applicato a SQX? Sono curioso di conoscere le opinioni di Mark o del team di sviluppo. Sarebbe davvero fantastico ottenere i miglioramenti di velocità da 10 a 100 volte che sono stati osservati con diversi modelli utilizzando configurazioni multi-GPU 🙂

0

bentra

Cliente, bbp_partecipante, comunità, sq-ultimate, 22 risposte.

Visita il profilo

4 anni fa #247208

Da wiki: Il calcolo parallelo è un tipo di calcolo in cui molti calcoli o l'esecuzione di processi vengono eseguiti simultaneamente. Tecnicamente questo avviene già da SQ3 e forse anche prima. (Altrimenti non saremmo in grado di usare più di un core alla volta).

Non vedo l'ora che arrivi anche il supporto per le GPU, dovrebbe essere molto più veloce ma potrebbe richiedere molto lavoro...

Da questo articolo: https://pdfs.semanticscholar.org/8fa2/9a317120add5525e61f41f73c5a96e932d60.pdf
La programmazione GPGPU è la scrittura massicciamente programmi paralleli da eseguire su personal computer.

 

Che tutti i vostri abiti siano sciolti.


https://www.darwinex.com/darwin/SUG.4.2/

0

Gianfranco

Abbonato, bbp_partecipante, cliente, comunità, 114 risposte.

Visita il profilo

4 anni fa #247214

come i core cuda di nvidia

Conosco alcuni software ottimizzati con le librerie nvidia cuda che sfruttano i core cuda delle schede nvidia gpu.... o tesla per il calcolo parallelo... ma penso che sia un grosso lavoro scrivere sqx ottimizzato con le librerie Cuda

0

kainc301

Cliente, bbp_partecipante, comunità, 54 risposte.

Visita il profilo

4 anni fa #247226

Tecnicamente questo avviene già da SQ3 e forse anche prima. (Altrimenti non saremmo in grado di utilizzare più di un core alla volta).

Pensavo che fossero solo WFO e Monte Carlo a trarne vantaggio, ma non ho idea di come siano gestiti i meccanismi interni di SQX, quindi era solo una supposizione.

Conosco alcuni software ottimizzati con le librerie nvidia cuda che sfruttano i core cuda delle schede nvidia gpu.... o tesla per il calcolo parallelo... ma penso che sia un grosso lavoro scrivere sqx ottimizzato con le librerie Cuda

Se potessi avere un solo regalo di Natale, sarebbe questo lol

 

0

clonex / Ivan Hudec

Cliente, bbp_partecipante, comunità, sq-ultimate, collaboratore, autore, editore, 271 risposte.

Visita il profilo

4 anni fa #247241

Qui è stato scritto molte volte come funziona sqx, perché non è possibile utilizzare la GPU, ecc.

0

kainc301

Cliente, bbp_partecipante, comunità, 54 risposte.

Visita il profilo

4 anni fa #247243

Qui è stato scritto molte volte come funziona sqx, perché non è possibile utilizzare la GPU, ecc.

Mark ha aggiunto le capacità della GPU all'elenco delle pietre miliari da realizzare in seguito per SQX: https://roadmap.strategyquant.com/tasks/sq4_2985

Ho letto ciò a cui ti riferivi, ma dopo che questo compito è stato presentato e c'è stata una discussione su come potrebbe essere implementato, avevo la presunzione che questo sentimento fosse cambiato.

0

kainc301

Cliente, bbp_partecipante, comunità, 54 risposte.

Visita il profilo

4 anni fa #247246

Ho fatto molte ricerche sui forum di SQ e altrove per capire quali sono gli attuali colli di bottiglia del GPU Computing quando si tratta di backtesting. Quando Mark ne ha parlato in passato, il problema riguardava l'utilizzo delle GPU per il calcolo generale, in quanto il backtesting era più complesso delle operazioni matematiche. Un'opinione simile è stata descritta in questo abstract accademico: https://pdfs.semanticscholar.org/d087/f5cb4a92f98aaef5008ceb682954f7ffbee2.pdf

Tuttavia, sembra che due ricercatori siano riusciti a utilizzare efficacemente le GPU con algoritmi genetici sui mercati FX. Consiglio vivamente di esaminare e potenzialmente implementare questo approccio. Il link completo alla loro ricerca accademica è qui: http://people.scs.carleton.ca/~dmckenne/5704/Paper/Final_Paper.pdf

Ho anche scoperto che NVIDIA è stata in grado di utilizzare le GPU per il backtesting dei mercati finanziari e di ottenere una velocità di 6000x https://www.nvidia.com/content/dam/en-zz/Solutions/industries/finance/finance-trading-executive-briefing-hr-web.pdf

Non so come abbiano fatto, quindi continuerò a cercare, ma sembra che ci sia un modo per incorporare la logica CUDA che è in grado di fare il tipo di backtesting che in precedenza era considerato quasi impossibile da fare. Credo quindi che ci sia ancora speranza che questo venga implementato in SQX un giorno. Se è già stato fatto in passato, non lo considero "impossibile". I ricercatori che hanno incorporato le GPU nel loro algoritmo genetico hanno anche utilizzato CUDA per ottenere i loro risultati.

0

Mark Fric

Amministratore, sq-ultimate, 2 risposte.

Visita il profilo

4 anni fa #247279

Mi sono consultato ripetutamente con i miei amici laureati che lavorano con le GPU e purtroppo la situazione non è cambiata: le GPU non sono adatte a noi.

È possibile eseguire l'evoluzione genetica e anche "qualche tipo" di backtesting su GPU. Il problema è la natura aperta dell'SQ che vogliamo realizzare.

Potremmo creare un'architettura di strategia fissa e un insieme fisso di indicatori da testare in GPU, ma poi non saremmo in grado di usare cose come i modelli di strategia, la programmazione di indicatori personalizzati e altri blocchi, che sono tutti punti di forza di SQ X.

L'accelerazione di cento volte di cui si parla nei documenti è possibile solo in determinate condizioni e con determinati programmi; non è ancora possibile accelerare in questo modo il processo generale di backtesting.

Marchio
Architetto StrategyQuant

0

kainc301

Cliente, bbp_partecipante, comunità, 54 risposte.

Visita il profilo

4 anni fa #247291

Mi sono consultato ripetutamente con i miei amici PHD dell'università che lavorano con le GPU e purtroppo la situazione non è cambiata: le GPU non sono adatte a noi. È possibile eseguire l'evoluzione genetica e anche "qualche tipo" di backtesting su GPU. Il problema è la natura aperta dell'SQ che vogliamo realizzare. Potremmo creare un'architettura di strategia fissa e un set fisso di indicatori da testare in GPU, ma poi non saremmo in grado di usare cose come i modelli di strategia, la programmazione di indicatori personalizzati e altri blocchi, che sono tutti punti di forza di SQ X. Questa accelerazione di cento volte di cui si parla nei documenti è possibile solo in determinate condizioni e con determinati programmi, non è ancora possibile accelerare il processo di backtesting generale in questo modo.

È un peccato. Sono d'accordo sul fatto che è molto più importante mantenere la flessibilità nell'uso di indicatori/template personalizzati piuttosto che sacrificarla per le prestazioni.

Quindi la vera soluzione per ottenere prestazioni più elevate tramite l'hardware è l'uso di più CPU collegate tramite un sistema a griglia. Almeno posso risparmiare i soldi delle costose GPU haha.

0

gusyoan

Cliente, bbp_partecipante, comunità, 21 risposte.

Visita il profilo

4 anni fa #254839

Ciao Mark,

Oltre alla GPU, è possibile utilizzare una scheda FPGA o un ASIC?

0

Mark Fric

Amministratore, sq-ultimate, 2 risposte.

Visita il profilo

4 anni fa #257552

no, non è possibile utilizzare questo tipo di carte. Ma non capisco l'ossessione per la massima potenza possibile: non è la chiave per un trading redditizio.

Marchio
Architetto StrategyQuant

0

Stai visualizzando 10 risposte - da 1 a 10 (di 10 totali)