OpenCL™ 2D Fast Fourier Transform Designbeispiel

Empfohlen für:

  • Gerät: Nicht bekannt

  • Quartus: v17.1

author-image

Von

Dieses Beispiel zeigt eine Open Computing Language (OpenCL) Implementierung einer 2D-schnellen Fourier-Transformation (FFT). Das Beispiel verarbeitet eine 2D-Matrix von 1.024x1.024 komplexen Gleitkommawerten mit einzelpräziser Genauigkeit. Das 2D FFT wird in eine 1D FFT zersetzt, die auf jede Zeile angewendet wird, gefolgt von einer 1D FFT, die auf jede Spalte angewendet wird.

Der Kernkern dieses Beispiels führt eine 1D FFT und eine Aussetzung der Matrix durch. Das Hostprogramm aufruft diesen 1D-FFT-Kernel zweimal, um die 2D-Transformation abzuschließen. Es gibt viele Optimierungen in diesem Beispiel, einschließlich eines Vergleichs von zwei verschiedenen Ausgabedatenlayouts, bei denen ein Datenlayout 60 % besser läuft. Weitere Einzelheiten finden Sie im Beispielpaket.

2D-FFT-Leistung

Funktionen

  • Erweiterung der Kanäle für Anbieter
  • Speicherzugriffsmuster-Optimierungen
  • Mehrere gleichzeitige Kernel
  • Mischung aus einzelnen Work-Item- und NDRange-Kerneln

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 zugrundeliegende 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.

Der Inhalt dieser Seite ist eine Kombination aus menschlicher und computerbasierter Übersetzung des originalen, englischsprachigen Inhalts. Dieser Inhalt wird zum besseren Verständnis und nur zur allgemeinen Information bereitgestellt und sollte nicht als vollständig oder fehlerfrei betrachtet werden. Sollte eine Diskrepanz zwischen der englischsprachigen Version dieser Seite und der Übersetzung auftreten, gilt die englische Version. Englische Version dieser Seite anzeigen.