最終更新: mikk_ni3_92 2010年03月03日(水) 16:31:31履歴
現在地 >> メニュー >> CUDA >> CUDA編02 >> CUDA編02::カーネルの呼び出し
__global__関数はCPUからGPUで実行関数をコールするもの。
つまり、CUDA側の処理の開始点みたいなもの。
その書き方は次の通り
構文としては次のようになる
【例】
__global__関数はCPUからGPUで実行関数をコールするもの。
つまり、CUDA側の処理の開始点みたいなもの。
その書き方は次の通り
- 宣言や定義時には修飾子として「__global__」を付ける
- 呼び出す時には「<<<… …>>>」を使って、「Grid数」や「Block数」を指定する
構文としては次のようになる
Func<<<Dg,Db,Ns,S>>>(parameter)
【例】
//------------- CUDAでの処理 ---------------// __global__ void cuAddValue(float *gpuAryData) { … … } … … float *gpuAry;//GPUメモリ用 //GPU用にブロックとスレッドを用意 dim3 grid(100,1,1);//100個のグリッド dim3 block(200,1,1);//200個のブロック //グリッド100個、ブロック200個 cuAddValue<<<grid,block>>>(gpuAry);