1.首先从Hello World!开始。
CUDA C代码和C语言类似,从下面的代码中并看不出与C语言有什么区别。
/*第一个程序*/
int main(){
printf(“Hello world!\n”);
return 0;
}
你可能认为这就是C语言啊!!!我刚接触的时候也是这样想,不过你继续学习下去就会发现其中的异同与乐趣。
2. 核函数的调用
在GPU上执行的函数通常称为核函数(Kernel)。
从下面代码中发现其中奥妙吧。
__global__ void kernel(){
}
int main(){
kernel<<<1,1>>>();
printf(“Hello World!\n”);
return 0;
}
以上需要注意的地方有两点:一个空的核函数kernel(),并且带有修饰符__global__,一个对该核函数的调用,并且带有修饰符<<<1,1>>>。
__global__修饰符将告诉编译器,该函数应该编译为在设备而不是主机上运行。函数kernel()将被交给编译设备代码的编译器,main()函数将被交给主机编译器。