Dieses Beispiel zeigt eine Open Computing Language (OpenCLTM)Implementierung einer 3D-Differenz-stencil-only-Berechnung. In einer Order-k-Stencil-Berechnung ist jeder Ausgabepunkt eine Funktion von 3k+1 Eingabepunkten(k angrenzenden Punkten in jeder Richtung). Aufgrund der Struktur der Rechenleistung gibt es eine erhebliche Wiederverwendung von Daten über verschiedene Ausgabepunkte hinweg, was zu Optimierungen führt, die versuchen, redundante Speicherzugriffe zu minimieren.
Der Kernel in diesem Beispiel nutzt die Wiederverwendung von Daten, indem er ein Volume-Rechenmuster verwendet (das 3D-Analoge des Fensterdesignmusters), um die Anforderungen an die Speicherbandbreite im Vergleich zu herkömmlichen OpenCL-Implementierungen zu reduzieren. Weitere Einzelheiten finden Sie im Beispielpaket.
3D-Differenz-Rechenleistung
Stencil-Bestellung |
Volumengröße |
Millionen von Punkten/s |
---|---|---|
8 |
384 x 384 x 384 x 384 |
2200 |
Funktionen
- Effizientes 3D-Volumen
- Einzel-Arbeitselement-Kernel
Downloads
Das Design-Beispiel liefert den Quellcode für das OpenCL-Gerät (.cl) und die Host-Anwendung. Zum Kompilieren der Host-Anwendung enthält das Linux* Paket eine Makefile und das Windows* Paket enthält ein Microsoft Visual Studio 2010-Projekt.
Die folgenden Downloads werden für dieses Beispiel bereitgestellt:
Die Verwendung dieses Designs unterliegt den Bedingungen der Hardware-Referenzdesignlizenzvereinbarung.
Software- und Hardware-Anforderungen
Dieses Designbeispiel erfordert die folgenden Tools:
- Intel® FPGA Software v17.1 oder neuer
- Intel® FPGA SDK für OpenCL v17.1 oder neuer
- Unter Linux: GNU Make und gcc
- Unter Windows*: Microsoft Visual Studio 2010*
Um die Intel Design-Tools herunterzuladen, besuchen Sie die OpenCL-Download-Seite. Die Anforderungen an das zugrunde liegende Betriebssystem sind dieselben wie die des Intel FPGA SDK für OpenCL.
OpenCL und das OpenCL-Logo sind Marken von Apple Inc., die mit Genehmigung von Khronos verwendet werden.
* Das Produkt basiert auf einer veröffentlichten Khronos-Spezifikation und hat den Khronos-Konformitätstest bestanden. Der aktuelle Konformitätsstatus finden Sie unter www.khronos.org/conformance.