2013-06-24 5 views
7

Ich benutze die cuFFT-Bibliothek Aufrufe in einem Host-Code sie funktionieren gut, aber ich möchte die cuFFT-Bibliothek von einem Kernel aufrufen. Frühere Versionen der CUDA hatten diese Art von Unterstützung nicht, aber mit der dynamischen Parallelität ist das möglich?Ist es möglich, Cammett-Bibliotheksaufrufe in der Gerätefunktion aufzurufen?

Es wird großartig sein, wenn es Beispiele gibt, wie dies zu erreichen ist.

+1

mögliche Duplikate von [Gibt es eine Methode der FFT, die innerhalb CUDA Kernel ausgeführt wird?] (Http://StackOverflow.com/questions/ 11587160/is-there-a-methode-of-fft-dass-will-run-inside-cuda-kernel) –

+0

@PavanYalamanchili: Ich habe gefragt, weil es mehr wegen der dynamischen Parallelität ist, wird jetzt mit cuda 5 unterstützt (Der Link Ihr Bezug ist ein Jahr alt). Anyways danke für die Info. Ich habe gerade heute mit Nvidia Developer Zone registriert und es gibt neue Version Coming Out Cuda 5.5 ging durch die Release-Note und konnte nichts im Zusammenhang mit Gerät aufrufbaren Bibliothek Funktionen .. finden .. :( –

Antwort

6

Trotz der Einführung der dynamischen Parallelität auf Kepler-Karten (cc 3.5) bleibt cuFFT eine Host-API und es gibt derzeit keine Möglichkeit, FFT-Operationen mit cuFFT im Gerätecode zu erstellen oder auszuführen.

+0

Vielen Dank für die Info .. Gibt es noch eine dritte Party FFT-Bibliothek auf CUDA portiert? was erlauben dies? –

0

gibt es keine Möglichkeit, die APIs aus dem GPU-Kernel aufzurufen. Sie müssen sie vom Host aus anrufen. Wenn Sie eine FFT ausführen möchten, ohne von DEVICE -> HOST -> DEVICE zu gehen, um mit der Ausarbeitung fortzufahren, ist die einzige Lösung, einen Kernel zu schreiben, der die FFT in einer Gerätefunktion ausführt. Eigentlich mache ich das, weil ich mehr FFT parallel laufen lassen muss, ohne die Daten erneut an den HOST zu übergeben. Wenn Sie eine andere Lösung finden/haben, lassen Sie es mich wissen. Es gibt eine Menge Beispiel im Internet, wie man das erreicht: - https://hackage.haskell.org/package/pure-fft-0.2.0/docs/Numeric-FFT.html

+0

Ich fand keine andere Lösung.Der Algorithmus, den ich implementierte hatte eine alternative analytische Lösung für das Problem.So haben wir das verwendet und völlig vermieden dieses Problem der FFT aus dem Gerät habe deine Antwort als Kommentar zu der Frage hinterlassen. –