OpenCL: interne Implementierungstests in MQL5 - Seite 12

 
Renat:

Während der Punkt gemacht wird, mit der Dokumentation, Post zumindest eine Liste von CL spezielle Funktionen
 
Urain:
Wenn wir schon dabei sind, mit Dokumentation, zumindest eine Liste der CL-Spezialfunktionen veröffentlichen
Ja, ich sehe, dass einige der Befehlsnamen nicht den Standardbezeichnungen entsprechen, z. B:

im Beispielcode - CLBufferCreate

und der OpenCL-Standard ist CLCreateBuffer
 
Urain:
Während der Punkt gemacht wird, mit der Dokumentation, Post zumindest eine Liste der CL besonderen Eigenschaften
Unterstützt von.
 

Die Dokumentation ist in Arbeit und wird in den nächsten Tagen aktualisiert werden.

Das Textskript befindet sich in der CodeBase: https://www.mql5.com/ru/code/825

Um mit OpenCL zu arbeiten, werden wir eine Klasse erstellen, um die schmutzige Arbeit mit der Initialisierung und Deinitialisierung von Kontexten, Puffern, etc. zu verstecken.

OpenCL Test
OpenCL Test
  • Stimmen: 10
  • 2012.02.07
  • MetaQuotes Software
  • www.mql5.com
Небольшой рабочий пример расчета фрактала Мандельброта в OpenCL, который кардинально ускоряет расчеты по сравнению с софтверной реализацией примерно в 100 раз.
 
Urain:
Wenn wir schon dabei sind, sollten Sie bei der Dokumentation zumindest eine Liste der CL-Besonderheiten veröffentlichen
Die OpenCL-Arbeiten sind in einer Entwurfsfassung auf der Website verfügbar
 
Rosh:
Auf der Website gibt es einen Abschnitt mit dem Titel Arbeiten mit OpenCL
Hier ist ein weiteres Buch über CUDA als Referenz.
Dateien:
CUDA-rus-book.zip  5880 kb
 

Renat, es wäre jetzt sehr angebracht, den Zugang zu den Puffern des BitMapLabel-Objekts zu öffnen (innerhalb vernünftiger "Sand"-Grenzen), so dass es möglich wäre, Videoinformationen direkt in den Speicher zu schreiben und dann durch einfaches Umschalten der aktiven Seite auszugeben. Das Kopieren in eine Datei ist keine Option.

// Oder erstellen Sie ein neues Objekt (z. B. GraphScreen) mit mehreren umschaltbaren Seiten.

Das Format des Puffers ist offensichtlich: zweidimensionales Array von Strukturen {ucar r, uchar g, uchar b, uchar alpha};

Die Größe kann bei der Erstellung des Objekts zwangsweise festgelegt werden - durch die Größe des Bildschirmbereichs oder durch die Option, den virtuellen Bildschirm nicht gleich groß wie den Ausgabebereich zu machen, mit der Möglichkeit, ihn relativ zum Bildschirm zu verschieben.

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

Renat, es wäre jetzt sehr angebracht, den Zugriff auf die Puffer des BitMapLabel-Objekts zu öffnen (innerhalb vernünftiger "Sand"-Grenzen), so dass man Videoinformationen direkt in den Speicher schreiben und dann durch einfaches Umschalten der aktiven Seite ausgeben kann. Durch das Kopieren einer Datei zum Austausch ist dies nicht der Fall.

Ja, es ist an der Zeit. Setzen wir es um.

 

Wenn Sie den Prozessor nicht als OpenCL-Gerät in den Terminalprotokollen des neuen Builds sehen, können Sie den Treiber aus dem Prebuilt installieren. Es sollten sowohl Intel- als auch AMD-Prozessoren erscheinen.

Der Treiber , der OpenCL1.2 unterstützt, wurde von streamsdk_2-6-RC3_win732 von der AMD-Website übernommen.


Ich habe solche Protokolle erhalten:

2012.02.09 20:31:38 Terminal CPU: AuthenticAMD AMD Athlon(tm) 64 X2 Dual Core Processor 3800+ mit OpenCL 1.1 (2 Einheiten, 2009 MHz, 2047 Mb, Version 2.0)

2012.02.09 20:31:38 Terminal GPU: NVIDIA Corporation GeForce 8500 GT mit OpenCL 1.0 (2 Einheiten, 918 MHz, 256 Mb, Version 285.62)


PS Es ist komisch, aber das Terminal erkennt den Prozessor als zwei Single-Core-Prozessoren und nicht als Dual-Core.

 
joo:

Wenn Sie den Prozessor nicht als OpenCL-Gerät im Terminalprotokoll des neuen Builds sehen, können Sie den Treiber aus dem Pre-Treiber verwenden.

Bitte geben Sie direkte Links zum Herunterladen ausführbarer Dateien von offiziellen Websites an.

Leider dürfen keine ausführbaren Dateien (auch nicht in Archiven) auf unseren Websites veröffentlicht werden. Dies dient der Sicherheit der Nutzer.

Grund der Beschwerde: