[CUDA学习笔记]从Hello Cuda开始

来源:互联网 发布:win8连接网络打印机 编辑:程序博客网 时间:2024/06/04 18:15

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程序啦~



原创粉丝点击