1. Cuda 编程环境的搭建:
网上针对不同的操作系统和cuda版本有很多详细的安装说明,推荐使用安装Cuda VS Wizard,下载地址http://sourceforge.net/projects/cudavswizard/。
2. 第一个Cuda程序:
新建项目,选择CUDA—CUDAWinAPP—输入项目名称—确定。
其中一个自动生成的文件叫sample.cu,这是环境自带的demo.
运行程序,Hello Cuda就出来啦!
程序说明:
__global__staticvoidHelloCUDA(char*result,intnum)
{
inti =0;
charp_HelloCUDA[] ="HelloCUDA!";
for(i = 0;i <num;i++) {
result[i] =p_HelloCUDA[i];
}
}
其中,__global__为内核函数类型限定符,其他语法跟C相同,HelloCUDA为函数名,result为返回结果。
主程序中函数调用语句为:
HelloCUDA<<<1,1,0>>>(device_result,11);
其中,<<<>>>为内核函数的执行参数,用于说明内核函数中的线程数量,以及线程是如何组织的。<<<1,1,0>>>代表一个kernel的grid中只有1个block,每个block中有1个thread。小括号内的参数为函数的参数。
以下语句将设备(GPU)数据拷贝回主机(CPU)并输出:
cutilSafeCall(cudaMemcpy(host_result,device_result,sizeof(char) *11,cudaMemcpyDeviceToHost));
printf("%s\n",host_result);
Hello Cuda的程序到此结束,以后新建自己的函数并在主程序中调用就可以开发自己的cuda程序啦~