OpenCL: pruebas de implementación interna en MQL5 - página 24
Está perdiendo oportunidades comerciales:
- Aplicaciones de trading gratuitas
- 8 000+ señales para copiar
- Noticias económicas para analizar los mercados financieros
Registro
Entrada
Usted acepta la política del sitio web y las condiciones de uso
Si no tiene cuenta de usuario, regístrese
Poner la memoria en modo de doble canal, resultado: 39x de aceleración en lugar de 29x.
Hice la prueba varias veces ayer para estar seguro, hoy también, los resultados fueron cercanos.
Lo extraño es que al configurar el modo de doble canal, la CPU dio un 0,3% de impulso, pero la GPU dio un 25% de impulso.
Tengo algo en ceros. ¿Qué significa eso? En esta línea:Resultado en Gpu MachResult==0.0 a 0 paso
Poner la memoria en modo de doble canal, resultado: 39x de aceleración en lugar de 29x.
Hice la prueba varias veces ayer para estar seguro, hoy también, los resultados fueron cercanos.
Lo extraño es que la CPU mostró un 0,3% de aumento de velocidad en el modo de doble canal, pero la GPU mostró un 25% de aumento de velocidad.
En realidad, no hay nada extraño en ello. En el trabajo (no en el trabajo con los gráficos, sino en los cálculos) con la GPU el cuello de botella es la memoria RAM (no basta con realizar los cálculos en la GPU, también hay que obtener los resultados de la tarjeta gráfica en la memoria RAM). La memoria RAM se ha vuelto más rápida y los resultados de la GPU han mejorado.
En el caso de la CPU, todo está ya almacenado en la memoria RAM y no hay necesidad de correr los resultados de un lado a otro.
De ahí una conclusión reveladora: si quieres cálculos rápidos en la GPU, instala una memoria rápida.
Tal vez no hay suficiente memoria, tal vez CountBars o / y CountPass deben reducirse un poco?
Sí, así es. Así es como resultó:
...que también es agradable. ))
//---
Si añado CountBars, la imagen parpadea y desaparece durante los cálculos.
Así que la conclusión del tema es simple, no importa lo rápido que sea tu CPU, es sólo un poz para la tarjeta gráfica :)
De todos modos, la tarjeta de vídeo hará que la CPU sea al menos 10 veces más rápida en los modelos de vídeo antiguos y 100 veces más rápida en los nuevos.
En mi caso, debido a la lentitud de los núcleos de la CPU, la aceleración es de 364 veces.
Así que la conclusión del tema es simple, no importa lo rápido que sea tu CPU, es sólo un poz para la tarjeta gráfica :)
De todos modos, tu tarjeta gráfica superará a tu CPU al menos 10 veces más rápido en los modelos de vídeo antiguos y 100 veces más rápido en los nuevos.
En mi caso, debido a la lentitud de los núcleos de la CPU, la diferencia es de 364 veces.
¡Vaya! ¡Es un récord! )))
//---
Intentaré más tarde poner los últimos drivers (295.73), quizás mejore un poco. ))
Interesante. La tarjeta fyords es más potente (GeForce GT 440) y el tiempo de cálculo es un orden de magnitud mayor.
Pues sí, da miedo imaginar si en lugar de esta piedra estuviera el i286 y algún monstruo moderno en lugar de la tarjeta. Todo lo que obtendría, o incluso más por varias veces.
P.D. ¿Alguien más tendrá un sistema sin tarjeta gráfica discreta como yo?
2012.03.05 17:43:16 CPU del terminal: GenuineIntel Intel(R) Core(TM) i3-2100 CPU @ 3.10GHz con OpenCL 1.1 (4 unidades, 3092 MHz, 4008 Mb, versión 2.0)
...
P.D. ¿Alguien más tendrá un sistema sin gráficos discretos como yo?
2012.03.05 17:43:16 CPU del terminal: GenuineIntel Intel(R) Core(TM) i3-2100 CPU @ 3.10GHz con OpenCL 1.1 (4 unidades, 3092 MHz, 4008 Mb, versión 2.0)
2012.03.05 17:45:23 ParallelTester_00-01x (EURUSD,M1) CpuTime/GpuTime = 0.734767766287369
2012.03.05 17:45:23 ParallelTester_00-01x (EURUSD,M1) Resultado en Cpu MachResult==1.27347 a 1125 pass
2012.03.05 17:45:23 ParallelTester_00-01x (EURUSD, M1) Recuento de inticadores = 16; Recuento de barras históricas = 144000; Recuento de pasadas = 1280
2012.03.05 17:45:23 ParallelTester_00-01x (EURUSD, M1) Tiempo de CPU = 21309 ms
2012.03.05 17:45:02 ParallelTester_00-01x (EURUSD,M1) Resultado en Gpu MachResult==1.27347 a 1125 pass
2012.03.05 17:45:02 ParallelTester_00-01x (EURUSD, M1) Recuento de inticadores = 16; Recuento de barras históricas = 144000; Recuento de pasadas = 1280
2012.03.05 17:45:02 ParallelTester_00-01x (EURUSD, M1) Tiempo GPU = 29001 ms
2012.03.05 17:44:33 ParallelTester_00-01x (EURUSD,M1) ¡Inicio de OpenCL OK!
:(((
¿Quizás tengo "granadas del sistema equivocado"? (Me refiero a la versión del SDK de AMD)