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
I codici saranno aggiunti:
I codici saranno aggiunti:
Grazie, allora quello che manca è una funzione per controllare la validità dell'handle.
Accettiamo dalle funzioni CL solo il valore del puntatore, non il puntatore stesso, quindi memorizzare il puntatore in posti diversi causerà una situazione di tentativo di rimozione di un processo non valido (sia esso contesto, buffer, programma o kernel).
funzione richiesta:
Ed è anche necessario ottenere programmaticamente la dimensione della memoria del dispositivo, perché le visioni hanno meno memoria delle CPU, mentre tutti i contesti esistenti simultaneamente usano la stessa memoria.
Sarebbe bene ottenere la temperatura della scheda (e anche della CPU) con mezzi standard mql per dosare il carico.
// Perché sono andato un po' su tutte le furie... :)
Ottenere le proprietà degli oggetti OpenCL arriverà presto.
Verrà anche organizzato il controllo delle maniglie.
1. non c'è alcuna funzionalità in OpenCL per ottenere la temperatura e il carico della GPU.
2. il recupero delle proprietà degli oggetti OpenCL sarà presto disponibile.
3. Verrà anche organizzato il controllo della maniglia.
1. lo so. Non deve essere attraverso OpenCL, deve essere attraverso il sistema. L'idea è solo quella di rendere la funzionalità nativa (senza chiamate DLL dai programmi mql5).
Ecco alcune funzioni eccellenti:
TerminalInfoInteger
Restituisce un valore intero di una proprietà ambientale corrispondente di un programma mql5.
TerminalInfoString
Restituisce un valore stringa di una proprietà ambientale corrispondente di un programma mql5
MQL5InfoInteger
Restituisce un valore di tipo intero di una proprietà corrispondente di un programma mql5 in esecuzione
MQL5InfoStringa
Restituisce un valore di tipo stringa di una proprietà corrispondente di un programma mql5 lanciato
Sarebbe bello e logico aggiungere:
SystemInfoInteger e quindi
SystemInfoString
che fornisce l'accesso a tutte le informazioni necessarie sull'ambiente del sistema: numero di core, nome e dimensione del sistema operativo, quantità di memoria (totale), quantità di memoria disponibile (libera) (RAM e spazio su disco), ecc.
Dopo tutto, il terminale non funziona nello spazio eterno vuoto. Altrimenti sembra molto sabbioso.
2, 3.
4. Assicuratevi di implementare un normale accesso al buffer (cl_Read/WriteBuffer), specificando entrambi gli offset di partenza (sia l'offset di mql-array che l'offset nel cl-buffer). Altrimenti, quasi tutti gli array devono essere copiati due volte - ne abbiamo davvero bisogno? Non stiamo scrivendo in OpenCL per perdere tempo a riscrivere dal nulla nel nulla. Non è giusto. :)
...
4. assicurarsi di avere già un normale accesso al buffer (cl_Read/WriteBuffer), specificando entrambi gli offset di partenza (sia l'offset mql-array che l'offset cl-buffer). Altrimenti, quasi tutti gli array devono essere copiati due volte - ne abbiamo davvero bisogno? Non stiamo scrivendo in OpenCL per perdere tempo a riscrivere dal nulla nel nulla. Non è giusto. :)
Specificate cosa intendete con questo.
Non mi sono ancora imbattuto nelle situazioni che descrivi.
Specificate cosa intendete con questo.
A cosa serva, non ho ancora incontrato le situazioni che descrivi.
Nessun problema. Ecco un esempio recente. Costruire la famiglia Ema.
Non è richiesto nulla di esotico, voglio solo che sia come qui:
int ArrayCopy(
void dst_array[], // куда копируем
void src_array[], // откуда копируем
int dst_start=0, // с какого индекса пишем в приемник
int src_start=0, // с какого индекса копируем из источника
int cnt=WHOLE_ARRAY // сколько элементов
);
Nessun problema. Ecco un esempio recente. Costruire la famiglia Ema
Non è richiesto nulla di esotico, voglio solo che sia come qui:
int ArrayCopy(
void dst_array[], // куда копируем
void src_array[], // откуда копируем
int dst_start=0, // с какого индекса пишем в приемник
int src_start=0, // с какого индекса копируем из источника
int cnt=WHOLE_ARRAY // сколько элементов
);
Sì, ho capito, non volete algoritmi più complicati e overrun di memoria dall'uso di
e volete essere in grado di compensare in fase di copia.
Non voglio copiare 100000 elementi e poi fare 998000 shift. Ma dovremmo lasciare la variante con shift che abbiamo ora, perché non permette di copiare molte volte gli stessi dati, ma di prenderli per un nuovo compito da un buffer CL già preparato con un nuovo shift.
SZY sarebbe anche bello essere in grado di sovrascrivere riallocando o sovrascrivendo parte dei dati nel buffer CL, quindi i nuovi dati ricevuti da tick potrebbero essere aggiunti senza dover acquistare tutti i dati. In tempo reale questo è poco utile, ma nel tester sì.