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

 
'CL_DEVICE_COUNT' - undeclared identifier    Struct_OpenCL__1.mq5    105    79


La ayuda lo tiene, el guión no.


¿Y cuándo terminará este lío con los identificadores?

 
Mathemat:
'CL_DEVICE_COUNT' - undeclared identifier    Struct_OpenCL__1.mq5    105    79

en las obras de construcción 630.
 
joo: He detectado un misterioso dispositivo 1 en mi ordenador utilizando el método del profesor Tychkov y funciona más rápido que CL_USE_ANY e incluso más rápido que CL_USE_GPU_ONLY.

¿Qué es? :O

Corre GPU Caps, habrá mucha información:

Probablemente tengas dos dispositivos. El 0 es el host, es decir, la CPU, y el 1 es su tarjeta discreta.

La diferencia de tiempo entre 125 ms y 78 ms no es tan significativa como para no considerar un error de GetTicksCount().

CL_USE_ANY y CL_USE_GPU_ONLY son sólo "máscaras" para seleccionar dispositivos, no dispositivos individuales.

 
Mathemat:

Corre GPU Caps, habrá mucha información:

Probablemente tengas dos dispositivos. El 0 es el host, es decir, la CPU, y el 1 es su tarjeta discreta.

¿Dónde se muestra esto en la utilidad?
 
joo:
¿Dónde se puede ver desde la utilidad?

Mira aquí:

Despliega la lista de la derecha y mira qué dispositivos tienes.

El anfitrión debe ser siempre cero, eso es lo que es un anfitrión...

 
Mathemat:

Y probablemente tengas dos dispositivos. El 0 es el host, es decir, la CPU, y el 1 es su tarjeta discreta.

Matemáticas:

Mira aquí:

Despliega la lista de la derecha y mira qué dispositivos tienes.

No tiene sentido:


 

En fin... no es raro. Tienes que tener al menos dos dispositivos, no hay manera de evitarlo. Ahí están, sólo que en diferentes plataformas.

Y MT5 consigue verlos independientemente de la plataforma. ¿Qué te dice CLGetInfoInteger(0, CL_DEVICE_COUNT)? Son dos, ¿verdad?

 
Mathemat:

Y MT5 consigue verlos independientemente de la plataforma. ¿Qué te dice CLGetInfoInteger(0, CL_DEVICE_COUNT)? Son dos, ¿verdad?

Así que 2, ¿y qué? ¿Cómo sabes si el dispositivo 0 es la tarjeta gráfica y el 1 es la CPU? Ese es mi punto: no puedes.

Bueno, por supuesto, puedes crear un programa OpenCL y obtener toda la información necesaria internamente, qué dispositivo tiene qué número. Pero no se puede hacer fuera usando MQL5.

 
joo:

Así que 2, ¿y qué? ¿Cómo sabes si el dispositivo 0 es la tarjeta gráfica y el 1 es la CPU? Ese es mi punto: no puedes.

Por supuesto, puedes usar OpenCL y obtener toda la información necesaria dentro, por ejemplo, qué dispositivo tiene qué número. Pero no se puede hacer fuera usando MQL5.

Pronto se añadirá al lenguaje la funcionalidad de OpenCL. Por lo tanto, habrá una oportunidad de averiguar quién es quién.
 
joo: Así que 2, ¿y qué? ¿Cómo sabes si el dispositivo 0 es la tarjeta de vídeo y el 1 es la CPU?
¡¿Tienes 0 para la tarjeta gráfica?! Es increíble.
Razón de la queja: