OpenCL: pruebas de implementación interna en MQL5 - página 43

 
Mathemat:
Y se reinició. Lo mismo: OpenCL-Z no ve la CPU como un dispositivo. No ve nada en absoluto.
No es convincente. Ejecuta un script OpenCL o algo así. OpenCL-Z no es un criterio de verdad.
 
MetaDriver: No es convincente. Ejecuta un script OpenCL de algún tipo. OpenCL-Z no es un criterio de verdad.

Sí, lo he intentado, MT5 ni siquiera tiene esa línea sobre OpenCL en el arranque. Antes lo había, y era una garantía de ejecución de código OpenCL.

fyords : ¡Estoy usando Your Uninstaller! PRO para limpiar el registro también.

Y si intentas borrar el procesador del kernel en el administrador de dispositivos, y luego reiniciar, Windows pondrá nuevos controladores de la CPU, tal vez OpenCL lo recoja.

Lo intentaré como último recurso. No me gusta ningún software que pase por el registro.

¡Oh, qué idea más fresca! ¿Cómo se eliminan los núcleos del despachador?

joo: Ve al modo seguro e intenta eliminar manualmente las ramas en el registro con alguna mención a OpenCL. A continuación, vuelva al modo normal e instale de nuevo el controlador.

Jeje, ya se han ido...

P.D. Por fin está en marcha.

 
Mathemat:
...

¡Oh, qué idea más fresca! ¿Y cómo se desinstalan los núcleos desde el gestor?

...

Como de costumbre, haga clic en el botón derecho->desinstalar en el kernel, luego le pedirá que reinicie - no, todos los kernels deben ser desinstalados y luego reiniciar

Hurra compañeros!!! :)

 
fyords: Como de costumbre, haga clic con el botón derecho del ratón en kernel->desinstalar, luego le pedirá que reinicie - no, todos los kernels deben ser desinstalados y luego reiniciar

¿Dónde está este núcleo en el gestor - qué proceso?

Sí, lo tengo. Pero no se llegó a eso. Cómo conseguí borrar todo por completo aún no lo entiendo. Probablemente porque desinstalé el AMD APP SDK no desde Windows, sino con el propio instalador de AMD...

 
Mathemat:
¿Y dónde está este núcleo en el Administrador de Dispositivos - qué proceso?
En el Administrador de dispositivos (en Mi PC, botón derecho del ratón->Gestión->Administrador de dispositivos)
 

Corriendo _Tast_Mand. Bueno, tengo un tiempo récord (con un buffer de 480):

2012.03.22 01:31:21    Tast_Mand_ (EURUSD,H1)    54741 msec

El aumento del búfer no provoca ninguna caída. La piedra se calienta un poco y sigue comiendo 20 vatios, aunque ambos núcleos están al 100%.

 

Mathemat:

... Sigue consumiendo 20 vatios...

Si no me equivoco, tienes un Pentium G840 a 2,8 GHz. ¿Desde cuándo consume 20 vatios? ¿No son 65 vatios?
 
fyords: Si no me equivoco, tienes un Pentium G840 a 2,8 GHz. Entonces, ¿desde cuándo consume 20 vatios? ¿No son 65 vatios?

Sí, así es. Lo máximo que le exprimí fueron unos 40 vatios, con CPUBurn o LinPack.

Intel asigna el TDP como la potencia que se disipará en el peor de los casos. Todavía no he visto que consuma más de 25 vatios en aplicaciones normales. Y ahora el terminal ha cogido casi el 100% y la piedra se va calentando poco a poco (las temperaturas máximas del núcleo son 54 y 57) y haciendo la tarea con un buffer de 48000.

2 joo: Andrei, ¿crees que este código es equivalente al tuyo o no?

"__kernel void MFractal(                                    \r\n"
"                       __global int *out                   \r\n"
"                      )                                    \r\n"
"  {                                                        \r\n"
"   int i = get_global_id(0);                               \r\n"
"   for(int u=0;u<100000000;u++)                            \r\n"
"   {                                                       \r\n"
"    out[i]+=u;                                             \r\n"
"    bool b=(out[i]<=10000);                                \r\n"
"    out[i]*=(int)b;                                        \r\n"
"   }                                                       \r\n"
"   out[i]+= i;                                             \r\n"
"  }                                                        \r\n";
 
Mathemat:

2 joo: Andrei, ¿crees que este código es equivalente al tuyo o no?

Parece que sí.

No estoy seguro, porque trato de no usar construcciones complicadas (difíciles de percibir a ojo), pero probablemente para nada, ya que puede acelerar el código.

Tu código probablemente sea más lento porque la variable b se vuelve a declarar en cada iteración del bucle.

 
joo: Su código probablemente será más lento, porque la variable b se vuelve a declarar en cada iteración del bucle.

Sí, es más lento, en un 20%.

He intentado poner la declaración fuera del bucle. Tardó un poco menos, pero todavía consiguió ir más lento que antes. Es extraño, nos hemos librado de si...