设为首页 收藏本站
查看: 1072|回复: 0

CUDA 6.5 && VS2013 && Win7:创建CUDA项目

[复制链接]

尚未签到

发表于 2015-5-14 12:21:42 | 显示全部楼层 |阅读模式
  运行环境:
  Win7+VS2013+CUDA6.5
  1.创建win32空项目
   DSC0000.png
   DSC0001.png
   DSC0002.png
   DSC0003.png
   DSC0004.png
   2.右键项目解决方案-->生成项目依赖项-->生成自定义
   DSC0005.png
   DSC0006.png
  3.右键项目解决方案-->属性-->配置属性-->常规-->平台工具集
   DSC0007.png
   DSC0008.png
  配置属性-->VC++目录-->包含目录,添加
  



$(CUDA_INC_PATH)
  
   DSC0009.png
   DSC00010.png
  连接器-->常规-->附加库目录,添加
  



$(CUDA_PATH)/lib/$(PlatformName)
  
DSC00011.png
  
   DSC00012.png
  链接器-->输入-->附加依赖项,添加
  



cudart.lib
  
   DSC00013.png
   DSC00014.png
  确定!
  现在就可以创建/使用/编译*.cu文件了。
  4.右键项目名称,添加-->新建项-->C++文件-->修改名称及后缀=>*.cu
DSC00015.png
DSC00016.png
DSC00017.png
  5.在新文件中添加以下头文件



1 #include "cuda.h"
2 #include "cuda_runtime.h"
3 #include "device_launch_parameters.h"
  6.创建kernel内核文件,一个可以在GPU上执行的文件



1 #include "cuda.h"
2 #include "cuda_runtime.h"
3 #include "device_launch_parameters.h"
4 #include
5
6 __global__ void SaXPY(float a, float* X_d, float* Y_d, int n)
7 {
8     if (threadIdx.x < n)
9         Y_d[threadIdx.x] = a * X_d[threadIdx.x] + Y_d[threadIdx.x];
10 }
11
12 int main()
13 {
14     int n = 64;
15     float a = 2;
16     float *X_h, *X_d, *Y_h, *Y_d;
17     X_h = (float*)malloc(n * sizeof(float));
18     Y_h = (float*)malloc(n * sizeof(float));
19     for (int i = 0; i < n; i++)
20     {
21         X_h = (float)i;
22         Y_h = 1.0;
23     }
24     cudaMalloc(&X_d, n * sizeof(float));
25     cudaMalloc(&Y_d, n * sizeof(float));
26     cudaMemcpy(X_d, X_h, n * sizeof(float), cudaMemcpyHostToDevice);
27     cudaMemcpy(Y_d, Y_h, n * sizeof(float), cudaMemcpyHostToDevice);
28     SaXPY (a, X_d, Y_d, n);
29     cudaMemcpy(Y_h, Y_d, n * sizeof(float), cudaMemcpyDeviceToHost);
30     for (int i = 0; i < n; i++)
31         printf("%2.1f X[%d] + Y[%d] = %f\n", a, i, i, Y_h);
32     cudaFree(X_d);
33     cudaFree(Y_d);
34     free(X_h);
35     free(Y_h);
36     system("Pause");
37     return 0;
38 }
  7.在调试模式下启动,观察结果。到此结束。
  自己跑的文件下载链接

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-66929-1-1.html 上篇帖子: Win7下禁止鼠标唤醒电脑 下篇帖子: win7与win7 无线局域网共享上网 问题
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表