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

 
GKS: Si AMD no hubiera comprado ATI Readon hace un par de años.

ATI fue comprada hace 6 años, en 2006.

La única pena es que los competidores de Intel no tengan una tecnología similar como Hyper-threading ojalá AMD la invente.

Bulldozer es una especie de implementación hardcore de hyper-threading: 8 undercore con FPUs obviamente escasas que también luchan por los recursos.

Sorprendentemente, Bull salió ligeramente mejor que Thuban x6 en promedio, incluso en multihilo. En tareas enteras bien paralizadas cuenta rápido (se queda ligeramente por debajo del i7), pero en todo lo demás pierde ante el i7 y acaba, de media, a la par con el i5-2400. En resumen, un procesador de servidor para el escritorio. Y es poco probable que Trinidad arregle esta situación: los núcleos están arrasados.

Según ixbt,

Aumento del rendimiento de la CPU de hasta un 29%, gracias al nuevo núcleo del procesador denominado convencionalmente Piledriver

Así que estaba equivocado. Me pregunto qué aplicaciones serían así.

AMD ����������� APU ����� A ������� ��������� (Trinity)
AMD ����������� APU ����� A ������� ��������� (Trinity)
  • www.ixbt.com
��� � ���������, �������� AMD ������� ����������� ��������� ���������� ����� A ������� ���������, ��������� ����� ��� �������� ������������ Trinity. ��� ������������� ��� ��������, ������� ������������ ������, ���������� �� ������������ � ����������� ����������, HTPC � ������������ ������. APU ������� ���������, �� ������ �������������...
 
Mathemat: Bulldozer es una especie de implementación hardcore de hipertróner: 8 undercore con FPUs obviamente escasas, que también luchan por los recursos.

Sigue siendo peor en términos de rendimiento energético. Cuánta más energía se gasta para ejecutar cada núcleo físico que cuando 4 núcleos físicos ejecutan 8 hilos independientes...

/ He corregido el post separando la cita de su respuesta. Para poder escribir su respuesta fuera de la cita (si no puede), haga clic en el botón HTML de la izquierda, escriba un par de letras al final de la marca y vuelva al modo visual - Mathemat/

 
Quiero creer que en este proyecto...
 

https://www.mql5.com/ru/articles/405 - después de leer este artículo me interesó el tema del GPU computing, aunque no soy programador, pero en este artículo me encontré con un enlacehttp://www.ixbt.com/video3/rad.shtml, que a su vez atrajo este artículo -http://www.ixbt.com/video3/rad2.shtml. Creo que este tema podría zaiterezovat desarrolladores de este proyecto, ya que describe una variante para aumentar la estrategia de testosterona de optimización del rendimiento con operaciones complejas. Tal vez ayude al desarrollo del proyecto.

P.s No he leído este artículo hasta el final.

Gracias por el consejo....

OpenCL: Мост в параллельные миры
OpenCL: Мост в параллельные миры
  • 2012.05.16
  • Sceptic Philozoff
  • www.mql5.com
В конце января 2012 года компания-разработчик терминала MetaTrader 5 анонсировала нативную поддержку OpenCL в MQL5. В статье на конкретном примере изложены основы программирования на OpenCL в среде MQL5 и приведены несколько примеров "наивной" оптимизации программы по быстродействию.
 

Y qué opina la gente de aquí sobre el C++ AMP que Microsoft ha implementado para su VS11:

http://msdn.microsoft.com/en-us/library/hh265136(v=vs.110).aspx

Anunciamos esta tecnología en la cumbre de desarrolladores de AMD Fusion en junio de 2011. Al mismo tiempo, anunciamos nuestra intención de hacer la especificación abierta, y estamos trabajando con otros proveedores de compiladores para que puedan soportarla en sus compiladores (en cualquier plataforma).

Tenga en cuenta que MS quiere que esta extensión del lenguaje sea abierta. Lo he probado en VS11 y he de decir que es una pasada. En lugar del engorroso código del SDK de CUDA en un .cu aparte sólo unas líneas en el mismo .cpp:

Ojalá MQL5 tuviera una función similar. Nunca he trabajado con OpenCL pero también he oído que es difícil programar ahí.

C++ AMP Overview
C++ AMP Overview
  • msdn.microsoft.com
C++ Accelerated Massive Parallelism (C++ AMP) accelerates execution of C++ code by taking advantage of data-parallel hardware such as a graphics processing unit (GPU) on a discrete graphics card. By using C++ AMP, you can code multi-dimensional data algorithms so that execution can be accelerated by using parallelism on heterogeneous hardware...
 
gpwr: Sería bueno que MQL5 tuviera las mismas capacidades.

Ya se ha preguntado por OpenMP. No lo hacen.

 
Pregunta para los desarrolladores de terminales: ¿hay algún plan para añadir la capacidad de establecer el tamaño del grupo de trabajo a la API de OpenCL? Eso estaría muy bien. Probablemente, en CLExecute(), según tengo entendido.
 
Mathemat:
Pregunta a los desarrolladores de terminales: ¿Hay algún plan para añadir a la API de OpenCL la posibilidad de establecer el tamaño del grupo de trabajo? Estaría muy bien. Probablemente, en la función CLExecute(), según tengo entendido.

CLExecute(cl_krn,work_dim,offset,work) - ¿no es así?

bool  CLExecute(
               int          kernel,                   // хендл на кернел OpenCL программы
               uint         work_dim,                 // размерность пространства задач 
               const uint&  global_work_offset[],     // начальное смещение в пространстве задач
               const uint&  global_work_size[]        // общее количество задач
               );
 
joo: CLExecute(cl_krn,work_dim,offset,work) - ¿no es así?

No, esto es sólo el tamaño del espacio de trabajo global.

Pero el tamaño del grupo de trabajo local no se encuentra en ninguna parte de la implementación de los desarrolladores de terminales. Pues deberías hacerlo.

En la API OpenCL completa, existe la función clEnqueueNDRangeKernel( ) cuyo análogo es CLExecute(). Es su sexto argumento - const size_t*local_work_size el que se necesita.

 
Ya veo.
Razón de la queja: