
Ti stai perdendo delle opportunità di trading:
- App di trading gratuite
- Oltre 8.000 segnali per il copy trading
- Notizie economiche per esplorare i mercati finanziari
Registrazione
Accedi
Accetti la politica del sito e le condizioni d’uso
Se non hai un account, registrati
Raccontaci in dettaglio cosa hai fatto. A cominciare da come avete smontato AMD APP SDK.
A proposito, forse non hai inserito un parametro nello script ParallelTester_00-01x nella funzione CLContextCreate() uguale a 0 (potrebbe essere eseguito sull'host (cioè sulla CPU). Non era scritto nel mio post.
Raccontaci in dettaglio cosa hai fatto. A partire da come avete eliminato l'AMD APP SDK.
Disinstalla AMD APP SDK eseguendo l'apposito Setup.exe, Uninstall. Riavviato.
Installato Intel OCL (intel_ocl_sdk_1.5_x64_setup.exe), solo RunTime. Riavviato.
Eseguire MT5 - mancato. Registro fisso su vostro consiglio. Ricaricato MT5 - che sfortuna.
Aggiunto percorso su consiglio di mql5, provato con e senza virgolette, x64, e x32. Dopo ogni modifica di registro - il mio usando MT5 di nuovo e il mio usando - stesse vecchie uova, solo una vista laterale.
Ora HKEY_LOCAL_MACHINE\SOFTWARE\Khronos\OpenCL\Vendors appare così:
(Predefinito)REG_SZ (valore non assegnato)
C:\Program Files (x86)\Intel\OpenCL SDK1.5\bin\x86\intelocl.dll REG_DWORD 0x00000000 (0)
(Predefinito)REG_SZ (valore non assegnato)
C:\Program Files (x86)\Intel\OpenCL SDK\1.5\bin\x86\intelocl.dll REG_DWORD 0x00000000 (0)
Hai guardato lì dentro? Io, per esempio, non ho nulla in questo percorso (ma ho scaricato e installato solo il runtime, forse è per questo che non è così).
E in secondo luogo, ho appena fatto intelocl.dll senza il percorso completo. Probabilmente è stato comunque registrato durante l'installazione runtime.
P.S. Sperimentato con percorsi completi. Metatrader non vede OpenCL con percorsi completi (entrambi). Ma se imposto solo intelocl.dll come nome, tutto diventa visibile immediatamente, anche senza riavviare il computer.
Non so come scegliere il file "giusto" tra due file esistenti con lo stesso nome nel sistema.
Si prega di riferire qui sul processo. Comunque, è interessante, forse ci sono delle sfumature. Io stesso ho lottato a lungo con questo, e ho "pasticciato" con il risultato, che mi piace molto.
P.P.S. A proposito, quando ero sulla risorsa Intel, mi hanno consigliato di disinstallare l'Intel SDK completo e reinstallarlo di nuovo. cioè non solo disinstallare, ma anche entrare nelle directory system32 e sysWOW64 e rimuovere tutto ciò che riguarda intelocl. Questi sono intelocl*.dll, opencl*.dll e altri file. Da qualche parte qui intorno c'è http://software.intel.com/en-us/forums/intel-opencl-sdk/. Quando lo troverò, vi darò un link più preciso.
Link utili: http://software.intel.com/en-us/articles/opencl-release-notes/
E qui - particolarmente utile: http://software.intel.com/en-us/forums/showthread.php?t=102023&o=a&s=lr, lì il consiglio di Uri Levy (Intel) può davvero aiutare. Comunque, è ancora un gioco di tamburello.
Questo è sulla CPU (nel mio caso è il dispositivo 1):
Ho tirato il parametro CLContextCreate(device) nel parametro dello script. Potete curiosare tra tutte le opzioni.
La cosa interessante è questa:
Questo script sulla build 630 in qualche modo non funziona così. Nessun messaggio, entra in un ciclo, caricando la pietra al 100%. E non va oltre un tempo ragionevole. Ma ho già il runtime Intel.
Quello che è interessante è come:
Questo script sulla build 630 in qualche modo non funziona così. Nessun messaggio, va in un ciclo, caricando la pietra al 100%. E non va oltre un tempo ragionevole. Ma ho già il runtime Intel.
Ricompilato, per me funziona.
È sulla CPU?! Beh, se è così, mi stai spaventando...
Mi sono eccitato troppo presto. L'ho eseguito e non ha avuto alcun senso, nemmeno una voce nel log dell'EA. Ma la sceneggiatura è partita e ha riempito immediatamente tutta la roccia. In altre parole, ha pestato qualcosa, ma non è arrivato a CLContextCreate() (avrebbe detto qualcosa se ci fosse arrivato, no?).
Questo è qualcosa di nuovo. Sembra che il runtime Intel non comprenda il codice compilato su AMD SDK. Ho impostato OCL_Device sia a 0 che a -1. Nessun effetto.
In generale, è scomodo che non si possa scegliere la piattaforma. Vorrei che fosse possibile farlo. Sono stanco di reinstallare.
È sulla CPU?! Beh, se è così, mi stai spaventando...
No, sulla GPU. Ma il dispositivo OpenCL è selezionabile. Qui sulla CPU:
Mi sono eccitato troppo presto. L'ho eseguito e non ha avuto alcun senso, nemmeno una voce nel log dell'EA. Ma la sceneggiatura si avvia e riempie immediatamente tutta la roccia. Cioè batte su qualcosa, ma non arriva a CLContextCreate() (se l'avesse fatto, avrebbe detto qualcosa, giusto?).
Qualcosa di nuovo. È come se il runtime Intel non capisse il codice compilato su AMD SDK. Ho impostato OCL_Device sia a 0 che a -1. Nessun effetto.
In generale, è scomodo che non si possa selezionare la piattaforma. Sarebbe auspicabile avere una tale opportunità. Sono stanco di reinstallare.
Oh, amico, è un ransomware).
Ok, ecco il codice sorgente. Fatene quello che volete.
Il codice non compila su AMD SDK. Almeno il codice OCL lo fa. Il programma OCL viene compilato durante l'esecuzione del codice mql. Il file EX5 dello snap-in OCL compila solo le funzioni del bridge mql/ocl-driver. Non credo che siano compilati in un codice macchina diverso a seconda del produttore del driver. Anche se solo gli sviluppatori possono chiarire completamente questo punto.
Hai controllato lì? Io, per esempio, non ho niente del genere in questo percorso (ma ho solo scaricato e installato il runtime, forse è per questo che non è così).
E in secondo luogo, ho appena fatto intelocl.dll senza il percorso completo. Probabilmente è stato comunque registrato durante l'installazione di runtime.
...
Il "nudo" intelocl.dll è stato uno dei primi ad essere controllato. C'è un file con quel nome in entrambe le cartelle x64 e x86.
Non so cosa fare allora. Mi sono torturato per cercare una soluzione finché il team di supporto non mi ha dato un suggerimento. Probabilmente non è una soluzione completa, ma ha funzionato sul mio computer.
Probabilmente la prima cosa da imparare è come rimuovere in modo pulito le tracce dei precedenti SDK.