OpenCL: test di implementazione interna in MQL5 - pagina 45

 
MetaDriver:
.........
"      out[i]=0;         \r\n" // после десятитысячного шага итерации этот оператор начнёт выполняться в каждом цикле.
"   }                    \r\n" // т.е. на выходе из цикла по любому будем иметь out[i] = 0;
......... 
Perché?
 
joo:
Perché?
out[i]+=u;       // если к неотрицательному числу прибавить число u большее 10000
if(out[i]>10000)  // то результат будет больше 10000 (true)
  out[i]=0;      // тогда ... = 0
 

И?...

Non riesco a stare al passo con i tuoi pensieri, mi dispiace.

 
joo:

И?...

И... allora...

"      out[i]=0;         \r\n" // после десятитысячного шага итерации этот оператор начнёт выполняться в каждом цикле.
"   }                    \r\n" // т.е. на выходе из цикла по любому будем иметь out[i] = 0;
 

Andrey, è semplice: out[ i ] non può essere superiore a 10000, e non appena è superiore, il valore dell'array viene azzerato - per convenzione. A partire da u=10001, sarà sempre azzerato.

Da qui in poi, cominceremo ad aggiungere valori ancora più grandi di u a zero. Ma non troppo grande, non più di 4 miliardi di sicuro. Quindi, il valore dell'array è positivo ed esattamente maggiore di 10000. Pertanto, è di nuovo zero. E così via. E poi, fuori dal ciclo, aggiungiamo i a zero.

 

Questo è comprensibile. Quello che non è chiaro è perché il mio array Out[] conterrà la stessa cosa dell'array di Vladimir:

"__kernel void MFractal(                                    \r\n"
"                       __global int *out                   \r\n"
"                      )                                    \r\n"
"  {                                                        \r\n"
"   out[get_global_id(0)]= get_global_id(0);                \r\n"
"  }                                                        \r\n";
 
joo: È chiaro. Quello che non è chiaro è perché il mio array Out[] conterrà lo stesso valore dell'array di Vladimir:

Perché fuori dal ciclo, quando il valore dell'array è già zero, i = get_global_id(0) viene aggiunto ad esso.

Bene, vai avanti e stampa tutti i valori.

 
Ho quasi messo insieme la slitta del 590, quando sarà il prossimo test?
 
casinonsk:
Ho quasi messo insieme la slitta del 590, quand'è il prossimo test?
Ora tocca a te scrivere qualcosa. )
 
casinonsk:
Ho quasi messo insieme la slitta del 590, quando avrà luogo il prossimo test?
Esegui i primi test su questo tuo slittamento e pubblicali qui. Un po' di divertimento almeno...
Motivazione: