本節書摘來自華章計算機《cuda c程式設計權威指南》一書中的第1章,第1.6節,作者 [美] 馬克斯·格羅斯曼(max grossman),譯 顔成鋼 殷建 李亮,更多章節内容可以通路雲栖社群“華章計算機”公衆号檢視。
1.參考圖1-5,分析以下幾種資料劃分形式:
(1)對于二維資料,沿x軸進行塊劃分
(2)對于二維資料,沿y軸進行周期劃分
(3)對于三維資料,沿z軸進行周期劃分
2.從hello.cu中移除cudadevicereset函數,然後編譯運作,看看會發生什麼。
3.用cudadevicesynchronize 函數來替換hello.cu中的cudadevicereset函數,然後編譯運作,看看會發生什麼。
4.參考1.3節,從編譯器指令行中移除裝置架構标志,然後按照下面的方式進行編譯,看看會發生什麼。
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsIyZuBnLzQmMxUGOkJDZ1EjZwUDM3kzMxIzMyQmYiZjZlRjYwEGMyAzMxYDZ48CXt92Yu4GZjlGbh5SZslmZxl3Lc9CX6MHc0RHaiojIsJye.png)
6.為執行核函數的每個線程提供了一個唯一的線程id,通過内置變量threadidx.x可以在核心中對線程進行通路。在hello.cu中修改核函數的線程索引,使輸出如下: