CUDA Wie die Einführung einer neuen kernel-Aufruf in einer Funktion im kernel?
Ich bin neu CUDA
Programmierung. Nun, ich habe ein problem zu handhaben: ich bin versucht, CUDA-parallel-Programmierung zu behandeln, eine Reihe von Datensätzen. Und für die einzelnen Datensätze, gibt es einige matrix-Berechnung getan werden musste.
Mein design ist wie diese:
-
Start N-threads für jedes dataset als Sie sind unabhängig von einander und die Methode, Sie zu behandeln, sind die gleichen.
-
In jedem thread in 1, möchte ich eine neue Funktion und diese Funktion funktioniert auch wie ein kernel, wie Sie sind, matrix-calc... z.B. call-M-threads parallel verarbeiten matrix-Berechnung..
Weiß jemand, ob es möglich ist oder nicht?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie starten einen kernel aus einem thread in einem anderen kernel, wenn Sie CUDA-dynamic parallelism und GPU unterstützt. GPUs unterstützen CUDA dynamische Parallelität derzeit sind der compute capability 3.5.
Entdecken Sie die compute capability von Ihrem Gerät aus die CUDA - deviceQuery Probe.
Erfahren Sie mehr über die Verwendung von CUDA-dynamische Parallelität aus dem CUDA programming guide Abschnitt.