執行配置是針對__global__函式的,並在其呼叫的地方指定。指明執行緒網格、執行緒塊的尺寸,以及共享記憶體的大小和流。
形式為:<<>>
dg、db:分別表示執行緒網格的大小和執行緒塊的大小,型別為dim3的結構體,有x、y、z三個成員變數,預設的建構函式會將其成員變數賦值為1,而int3則是只含有x、y、z三個成員變數的簡單c結構體,不含任何成員函式,所以其初值未知的;
ns:size_t型別,指明共享記憶體的大小,可選項,預設0;
s:cudastream_t型別(實質為custream_st *
),指明流,可選項,預設0;
例如:__global__ void fun(); //__global__函式形式
fun<<>>();//呼叫形式
主要有五個內建變數,它們只在執行在裝置上的函式內有效
griddim:執行緒網格的尺寸或大小,dim3型別的變數,其值為在指定執行配置時的第乙個引數dg;
blockidx:執行緒塊索引,指示執行緒網格中的某一塊,為int3型別,各個分量的值最大值為對應griddim分量值減1,因為索引是基於0開始的;
blockdim:每個執行緒塊尺寸或大小,為dim3型別,其值為在指定執行配置時的第二個引數db;
threadidx:執行緒索引,為uint3型別,指示某一線程塊中的某乙個執行緒,各個分量的最大值為對應blockdim分量值減一,索引基於0開始;
warpsize:後續補充。
cuda的內建變數
thread 執行緒 乙個執行緒可作為乙個運算單元,多個thread可組成乙個block 塊 threadidx.x block中當前thread在x方向上的id.threadidx.y block中當前thread在y方向上的id.block 塊 乙個block中可包含多個thread,多個blo...
awk(四) 常用內建變數
以下為awk內建變數 argc 命令列引數個數 filename 當前輸入文件的名稱 fnr 當前輸入文件的當前記錄編號,尤其當有多個輸入文件時有用 nr 輸入流的當前記錄編號 nf 當前記錄的字段個數 fs f 字段分隔符 awk f etc passwd awk begin etc passwd...
OpenGL GLSL 內建變數與 常用內建函式
在著色器中我們一般都會宣告變數來在程式中使用,但是著色器中還有一些特殊的變數,不宣告也可以使用。這些變數叫做內建變數。內建變數,相當於著色器硬體的輸入和輸出點,使用者利用這些輸入點輸入之後,就會看到螢幕上的輸出。通過輸出點可以知道輸出的某些資料內容。當然,實際上肯定不會這樣簡單,這麼說只是為了幫助理...