Ecco cosa si può fare con OpenCL direttamente in MetaTrader 5 senza alcuna DLL - pagina 3

 
doom può essere eseguito nella finestra di mt5?
 

Il codice corretto viene ripubblicato. Funziona anche sulla CPU.

Abbiamo rilasciato OpenCL in MetaTrader 5 nel febbraio 2012 nella build 581. Ora sia OpenCL stesso che il supporto hardware sono ad un livello accettabile e siamo tornati al tema dell'utilizzo di OpenCL in matematica e grafica.

 
Alexey Volchanskiy:
Renat ha detto molto tempo fa che OpenCL funziona nel tester MT5, ma solo sulla macchina locale, non nel cloud. Quindi, usatelo almeno adesso.
Beh, non c'è ancora un kernel GP nel tester standard, tutti gli agenti sono solo CPU.
 

Allora, come vanno le cose con il multitasking? Nessuno ha risposto.

  1. Se diversi EA sono in esecuzione in un terminale, possono condividere e utilizzare OpenCL in modo indipendente?
  2. È lo stesso con i terminali multipli.

 
Vitalie Postolache:
Beh, nel tester standard del kernel i GP non funzionano in alcun modo, tutti gli agenti sono solo CPU.
Lavorano nel tester standard degli agenti locali.
 
Alexey Volchanskiy:

Allora, come vanno le cose con il multitasking? Nessuno ha risposto.

  1. Se diversi EA sono in esecuzione in un terminale, possono condividere e utilizzare OpenCL in modo indipendente?
  2. È lo stesso con i terminali multipli.

Sì, tutto funziona nei limiti dell'adeguatezza delle risorse.
 
Vitalie Postolache:
Beh, nel tester standard i core GP non funzionano ancora in alcun modo, tutti gli agenti sono solo CPU.
Grazie per l'informazione, è giusto? Allora non ho ancora bisogno di OpenCL.
 
Vitalie Postolache:
Beh, se non solo 8-16 core della CPU, ma migliaia di core GP saranno utilizzati per l'ottimizzazione, sarà un'esplosione di prestazioni. Se tale possibilità sarà implementata, naturalmente.
Alexey Volchanskiy:
Renat ha detto da tempo che OpenCL funziona nel tester MT5 ma solo su una macchina locale, non nel cloud. Quindi, usatelo almeno adesso.

L'ottimizzazione abituale comporta il passaggio di una copia dell'EA ad ogni agente, cioè è un parallelismo a livello dell'intero EA.

E solo una parte della logica può essere inviata alla GPU che può essere messa in parallelo da EA, una copia di EA non può essere inviata alla GPU. Cioè solo una parte della logica EA da ciascuna delle copie sugli agenti locali può essere inviata alle "migliaia di core GP".

Quindi, specificare semplicemente i core GP come agenti per qualsiasi EA non funzionerà.

 
Renat Fatkhullin:
Lavorare in tester standard negli agenti locali.
Perché vedo solo i core della CPU (Core i5, 8 core - 8 agenti) quando ottimizzo, quando ho NVIDIA 780GTX?
 
Andrey Dik:

L'ottimizzazione abituale comporta il passaggio di una copia dell'EA ad ogni agente, cioè è un parallelismo a livello dell'intero EA.

E solo una parte della logica può essere inviata alla GPU che può essere parallelizzata da EA, una copia di EA non può essere inviata alla GPU. Cioè solo una parte della logica EA da ciascuna delle copie sugli agenti locali può essere inviata alle "migliaia di core GP".

Quindi, specificare semplicemente i core GP come agenti per qualsiasi EA non funzionerà.

Sì, ho un po' di familiarità con OCL, ne sono consapevole. Quindi, non è necessario caricare l'intero EA nella mappa, basta lasciare che i frammenti di codice parallelo siano caricati; essi, di regola, rappresentano una percentuale dell'intero codice.