Ich arbeite an einem Programm, in dem es zwei Hauptkerne gibt.Welche Dimension sollte der cuRAND-Initialisierungskernel haben
Aufgrund der Auswirkungen auf die Leistung hat jeder Kernel seine eigenen Dimensionen. Somit habe ich 2 verschiedene Block- und Rastergrößen (deren Werte zur Kompilierzeit nicht bekannt sind).
Beide Kernel müssen die cuRAND-Bibliothek verwenden, also bevor ein dritter Kernel gestartet wird, um den cuRAND-Zustand auf dem Gerät zu initialisieren.
Meine Frage kommt, wenn ich die Dimensionen dieses Kernels wählen muss.
Lassen Sie uns sagen, dass ich für den Kernel 1 und 2:
block_size_1 = 256
grid_size_1 = 10
block_size_2 = 512
grid_size_2 = 2
Für die cuRAND Initialisierung Kernel, sollte ich die größten Größen verwenden (10*512
) oder die höchste Anzahl der Threads (10*256
)?
Sie sollten die [Dokumentation] (http://docs.nvidia.com/cuda/curand/index.html) lesen. Deine Frage ist unklar ... – havogt