1
我已經通過CUDA編程指南過去了,我無法理解的線程分配方法如下所示:CUDA線程分配
dim3 dimGrid(2, 2, 1);
dim3 dimBlock(4, 2, 2);
KernelFunction<<< dimGrid, dimBlock >>>(. . .);
一些能解釋一下線程分配給上述條件?
我已經通過CUDA編程指南過去了,我無法理解的線程分配方法如下所示:CUDA線程分配
dim3 dimGrid(2, 2, 1);
dim3 dimBlock(4, 2, 2);
KernelFunction<<< dimGrid, dimBlock >>>(. . .);
一些能解釋一下線程分配給上述條件?
一種直觀的方式來考慮網格和塊是它們可視化:
您的dimBlock(4, 2, 2)
意味着每個塊都有4 x 2 x 2 = 16
個線程。 您的dimGrid(2, 2, 1)
表示網格有2 x 2 x 1 = 4
塊。 因此,您的內核在4個塊的網格上啓動,其中每個塊都有16個線程。總之,您的內核將以16 x 4 = 64
線程啓動。
哇..這是一個偉大的思考方式。感謝分享。 – Lostsoul 2012-05-19 22:17:38
閱讀編程指南。再次。 – fabrizioM 2010-10-15 16:08:04