OpenCL : tests de l'implémentation interne dans MQL5 - page 12

 
Renat:

Pendant que l'on parle, avec la documentation, affichez au moins une liste des fonctions spéciales de CL
 
Urain:
Pendant que nous y sommes, avec la documentation, affichez au moins une liste des fonctions spéciales de CL
Oui, je peux voir que certains noms de commandes ne correspondent pas aux notations standard, par ex :

dans le code de l'exemple - CLBufferCreate

et la norme OpenCL est CLCreateBuffer
 
Urain:
Pendant que la remarque est faite, avec la documentation, affichez au moins une liste des caractéristiques spéciales de CL
Appuyé par.
 

La documentation est en cours de rédaction et sera mise à jour dans les prochains jours.

Le script texte est placé dans CodeBase : https://www.mql5.com/ru/code/825

Pour travailler avec OpenCL, nous allons créer une classe pour cacher le sale boulot avec l'initialisation et la désinitialisation des contextes, des tampons, etc.

OpenCL Test
OpenCL Test
  • votes : 10
  • 2012.02.07
  • MetaQuotes Software
  • www.mql5.com
Небольшой рабочий пример расчета фрактала Мандельброта в OpenCL, который кардинально ускоряет расчеты по сравнению с софтверной реализацией примерно в 100 раз.
 
Urain:
Pendant que nous y sommes, avec la documentation, affichez au moins une liste des caractéristiques spéciales du CL
Les travaux sur OpenCL sont disponibles en version préliminaire sur le site web
 
Rosh:
Une version préliminaire de la section OpenCL est disponible sur le site web.
Voici un autre livre sur CUDA pour référence.
Dossiers :
CUDA-rus-book.zip  5880 kb
 

Renat, il serait très approprié maintenant d'ouvrir (dans des limites raisonnables de "sable") l'accès aux tampons de l'objet BitMapLabel. Il serait ainsi possible d'écrire les informations vidéo directement en mémoire, puis de les sortir par simple changement de page active. La copie dans un fichier n'est pas une option.

// Ou créez un nouvel objet (quelque chose comme GraphScreen) avec quelques pages commutables.

Le format du tampon est évident : un tableau bidimensionnel de structures {ucar r, uchar g, uchar b, uchar alpha} ;

La taille peut être fixée de manière forcée, lors de la création de l'objet - par la taille de la zone de l'écran, ou laisser la possibilité de rendre l'écran virtuel de taille non égale à la zone de sortie avec la possibilité de le décaler par rapport à l'écran.

Документация по MQL5: Основы языка / Операторы / Оператор создания объекта new
Документация по MQL5: Основы языка / Операторы / Оператор создания объекта new
  • www.mql5.com
Основы языка / Операторы / Оператор создания объекта new - Документация по MQL5
 
MetaDriver:

Renat, il serait très approprié maintenant d'ouvrir (dans des limites raisonnables de "sable") l'accès aux tampons de l'objet BitMapLabel. De sorte que vous puissiez écrire l'information vidéo directement dans la mémoire, et ensuite la sortir par simple changement de page active. La copie vers un fichier à échanger n'est pas le cas.

Oui, c'est le moment. Mettons-la en œuvre.

 

Si vous ne voyez pas le processeur comme périphérique OpenCL dans les journaux du terminal de la nouvelle version, vous pouvez installer le pilote à partir de la version pré-construite. Les processeurs Intel et AMD devraient apparaître.

Le pilote supportant OpenCL1.2 provient de streamsdk_2-6-RC3_win732 du site web d'AMD.


J'ai de tels journaux :

2012.02.09 20:31:38 Terminal CPU : AuthenticAMD AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ avec OpenCL 1.1 (2 unités, 2009 MHz, 2047 Mb, version 2.0)

2012.02.09 20:31:38 Terminal GPU : NVIDIA Corporation GeForce 8500 GT avec OpenCL 1.0 (2 unités, 918 MHz, 256 Mb, version 285.62)


PS C'est drôle mais le terminal détecte le processeur comme deux processeurs à un seul cœur au lieu de deux.

 
joo:

Si vous ne voyez pas le processeur comme périphérique OpenCL dans le journal du terminal de la nouvelle version, vous pouvez utiliser le pilote du pré-driver.

Veuillez fournir des liens directs pour télécharger les exécutables depuis les sites officiels .

Malheureusement, aucun fichier exécutable (même sous forme d'archives) n'est autorisé à être publié sur nos sites. Ceci est pour la sécurité des utilisateurs.