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

 
Mathemat:

Aquí tienes más información sobre Renat. Al desinstalar el SDK, recibí un mensaje de advertencia como este:

Es decir, aunque el terminal no reconozca la piedra como un dispositivo OpenCL, pero algo en el SDK sigue intentando hacer algo de alguna manera. ¿Tal vez sea un problema de la terminal?

Tal vez - vamos a comprobarlo.
 
Mathemat:

Hay un problema: decidí desinstalar AMD APP SDK (funcionó) y poner Intel OpenCL SDK. Pero no funcionó.

...

¿Qué debo hacer para que esto funcione? No tengo tarjeta de vídeo pero quiero ejecutar el código en el procesador integrado en la GPU.

También tengo instaladoel SDK de Intel OpenCL y el mismo problema. Todavía no he intentado instalar el SDK de AMD APP. Seguramente lo probaré algún día y os contaré los resultados.
 
tol64: También tengo instaladoel SDK de Intel OpenCL y el mismo problema. Todavía no he intentado instalar el SDK de AMD APP. Tal vez lo pruebe un día de estos y os cuente los resultados.
No lo necesitas porque tienes la GeForce 9600M GT. ¿Qué piedra utiliza?
 
Mathemat:
No lo necesitas, tienes la GeForce 9600M GT. ¿Qué tipo de piedra utiliza?

Sólo para experimentar. ))

 
Mathemat:

Bueno, tengo una piedra desnuda con Intel HD Graphics en su interior.

Si tu tarjeta es AMD entonces nada mejor. Y este SDK "ajeno" se ha mostrado muy bien en los gráficos Intel HD. Y se levantó inmediatamente a diferencia del de Intel.

Pero Intel hizo su SDK por una razón, especialmente para sus propias piedras.

Como mínimo, instala los drivers de AMD y siente la diferencia.

Tampoco tengo ningún hardware de AMD y, sin embargo, todo funciona sin problemas.

El procedimiento es bastante sencillo: instalar los controladores nativos de todos los dispositivos. A continuación, tomamos el software del controlador AMD OpenCL y lo ejecutamos. La utilidad se adentrará en el hardware y configurará todo como debe ser. Reinicia tu ordenador y disfruta de tu vida.

También puedes instalar el SDK de AMD, si tienes ganas de programar algo. En este caso, los controladores se ajustarán automáticamente.

 
2012.03.05 01:42:20    Terminal    CPU: AuthenticAMD AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ with OpenCL 1.1 (2 units, 2009 MHz, 2047 Mb, version 2.0)

2012.03.05 01:42:20    Terminal    GPU: NVIDIA Corporation GeForce 8500 GT with OpenCL 1.0 (2 units, 918 MHz, 256 Mb, version 285.62)


2012.03.05 01:44:56    ParallelTester_00-01x (GBPJPY,H1)    CpuTime/GpuTime = 9.809641532756489
2012.03.05 01:44:56    ParallelTester_00-01x (GBPJPY,H1)    Result on Cpu МахResult==1.79346 at 725 pass
2012.03.05 01:44:56    ParallelTester_00-01x (GBPJPY,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 1024
2012.03.05 01:44:56    ParallelTester_00-01x (GBPJPY,H1)    CPU time = 55552 ms
2012.03.05 01:44:00    ParallelTester_00-01x (GBPJPY,H1)    Result on Gpu МахResult==1.79347 at 725 pass
2012.03.05 01:44:00    ParallelTester_00-01x (GBPJPY,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 1024
2012.03.05 01:44:00    ParallelTester_00-01x (GBPJPY,H1)    GPU time = 5663 ms
2012.03.05 01:43:55    ParallelTester_00-01x (GBPJPY,H1)    OpenCL init OK!




2012.03.16 12:18:09    Terminal    CPU: GenuineIntel  Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz with OpenCL 1.1 (4 units, 3311 MHz, 8174 Mb, version 2.0)

2012.03.16 12:18:09    Terminal    GPU: NVIDIA Corporation GeForce GTX 570 with OpenCL 1.1 (15 units, 1464 MHz, 1280 Mb, version 296.10)


2012.03.16 12:34:08    ParallelTester_00-01x (EURUSD,H1)    CpuTime/GpuTime = 120.8
2012.03.16 12:34:08    ParallelTester_00-01x (EURUSD,H1)    Result on Cpu МахResult==1.37999 at 297 pass
2012.03.16 12:34:08    ParallelTester_00-01x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 1024
2012.03.16 12:34:08    ParallelTester_00-01x (EURUSD,H1)    CPU time = 15100 ms
2012.03.16 12:33:53    ParallelTester_00-01x (EURUSD,H1)    Result on Gpu МахResult==1.37999 at 297 pass
2012.03.16 12:33:53    ParallelTester_00-01x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 1024
2012.03.16 12:33:53    ParallelTester_00-01x (EURUSD,H1)    GPU time = 125 ms
2012.03.16 12:33:53    ParallelTester_00-01x (EURUSD,H1)    OpenCL init OK!

 
joo:


2012.03.16 12:18:09    Terminal    CPU: GenuineIntel  Intel(R) Core(TM) i5-2500 CPU @ 3.30GHz with OpenCL 1.1 (4 units, 3311 MHz, 8174 Mb, version 2.0)

2012.03.16 12:18:09    Terminal    GPU: NVIDIA Corporation GeForce GTX 570 with OpenCL 1.1 (15 units, 1464 MHz, 1280 Mb, version 296.10)

¡¡Traidor!!

--

;)

 
joo:



2012.03.16 12:34:08    ParallelTester_00-01x (EURUSD,H1)    CpuTime/GpuTime = 120.8
2012.03.16 12:34:08    ParallelTester_00-01x (EURUSD,H1)    Result on Cpu МахResult==1.37999 at 297 pass
2012.03.16 12:34:08    ParallelTester_00-01x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 1024
2012.03.16 12:34:08    ParallelTester_00-01x (EURUSD,H1)    CPU time = 15100 ms
2012.03.16 12:33:53    ParallelTester_00-01x (EURUSD,H1)    Result on Gpu МахResult==1.37999 at 297 pass
2012.03.16 12:33:53    ParallelTester_00-01x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 1024
2012.03.16 12:33:53    ParallelTester_00-01x (EURUSD,H1)    GPU time = 125 ms
2012.03.16 12:33:53    ParallelTester_00-01x (EURUSD,H1)    OpenCL init OK!

Póngalo en orden secuencial, por favor:

4096

8192

16348

32768

65536

Veamos si merece la pena tener miedo... ;)

2012.03.16 12:34:37     ParallelTester_00-01 x Соunt inticators = 16; Count history bars = 144000; Count pass = 65536
2012.03.16 12:34:37     ParallelTester_00-01 x GPU time = 983 ms
....
2012.03.16 12:33:53     ParallelTester_00-01 x Соunt inticators = 16; Count history bars = 144000; Count pass = 32768
2012.03.16 12:33:53     ParallelTester_00-01 x GPU time = 592 ms
....
2012.03.16 12:33:05     ParallelTester_00-01 x Соunt inticators = 16; Count history bars = 144000; Count pass = 16384
2012.03.16 12:33:05     ParallelTester_00-01 x GPU time = 499 ms
....
2012.03.16 12:30:30     ParallelTester_00-01 x Соunt inticators = 16; Count history bars = 144000; Count pass = 8192
2012.03.16 12:30:29     ParallelTester_00-01 x GPU time = 234 ms
....
2012.03.16 12:29:43     ParallelTester_00-01 x Соunt inticators = 16; Count history bars = 144000; Count pass = 4096
2012.03.16 12:29:42     ParallelTester_00-01 x GPU time = 234 ms

//---

No puedo elaborar una teoría satisfactoria de por qué el tiempo de mi sistema no crece hasta 12800 hilos concurrentes y sólo después de eso comienza a comportarse como si a partir de ese momento los procesos "fuera de lugar" se pusieran en cola. La especificación de la tarjeta dice 1280 "abejas", es decir, 10 veces menos. En resumen, debo haber conseguido 10 veces más núcleos por algún descuido. O tal vez he conseguido alguna oferta especial de vacaciones. :)

 
2012.03.16 15:31:34    ParallelTester_00-01 x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 131072
2012.03.16 15:31:34    ParallelTester_00-01 x (EURUSD,H1)    GPU time = 2012 ms
....
2012.03.16 15:28:09    ParallelTester_00-01 x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 65536
2012.03.16 15:28:09    ParallelTester_00-01 x (EURUSD,H1)    GPU time = 1014 ms
....
2012.03.16 15:27:20    ParallelTester_00-01 x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 32768
2012.03.16 15:27:20    ParallelTester_00-01 x (EURUSD,H1)    GPU time = 562 ms
....
2012.03.16 15:26:24    ParallelTester_00-01 x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 16348
2012.03.16 15:26:24    ParallelTester_00-01 x (EURUSD,H1)    GPU time = 406 ms
....
2012.03.16 15:25:46    ParallelTester_00-01 x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 8192
2012.03.16 15:25:46    ParallelTester_00-01 x (EURUSD,H1)    GPU time = 249 ms
....
2012.03.16 15:24:53    ParallelTester_00-01 x (EURUSD,H1)    Соunt inticators = 16; Count history bars = 144000; Count pass = 4096
2012.03.16 15:24:53    ParallelTester_00-01 x (EURUSD,H1)    GPU time = 125 ms


En la cuenta 262144 el controlador de la tarjeta de vídeo se bloquea inconscientemente. Cierto, vuelve a salir inmediatamente.



PS mi tarjeta tiene 480 moscas en total.

PPS Se puede ver que en valores bajos de CountPass mi tarjeta es más rápida. Pero a partir de 65536 empieza a quedarse atrás.

PPPS Su tarjeta es más barata, pero muestra resultados comparables a los míos.

 
joo:

PPPS Su tarjeta es más barata pero muestra resultados comparables a los míos.

... Que podría haber leído de antemano en overclockers.ru :)

Por cierto, ¿cuánto has pagado?

// He comprado una Radeon 6930 por 5650p