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[] ="Hello CUDA!";
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程序啦~
http://blog.youkuaiyun.com/jonny_super/article/details/10905669
本文详细介绍CUDA编程环境的搭建过程,并通过一个简单的HelloCUDA示例程序演示了CUDA编程的基本步骤,包括如何定义内核函数、设置线程配置及数据在GPU与CPU之间的传输。
1336

被折叠的 条评论
为什么被折叠?



