- 核函数是用
__global__
修饰的; - 核函数的返回值是
void
;
下面两种形式都是可以的:
__global__ void kernel_function(argument arg){
printf("Hello World from the GPU!\n");
}
void __global__ kernel_function(argument arg){
printf("Hello World from the GPU!\n");
}
- 核函数只能访问 GPU 内存;
- 核函数不能使用变长参数;
- 核函数不能使用静态变量;
- 核函数不饿能使用函数指针;
- 核函数具有异步性;
- 核函数不支持 C++ 的 iostream,意味着核函数不支持用 cout << 来进行输出,要输出的话可以使用 printf 函数来进行打印;