CUDA 6.5 VS2013 Win7:创建CUDA项目

运行环境:

Win7+VS2013+CUDA6.5

1.创建win32空项目

 2.右键项目解决方案-->生成项目依赖项-->生成自定义

3.右键项目解决方案-->属性-->配置属性-->常规-->平台工具集

配置属性-->VC++目录-->包含目录,添加

 

$(CUDA_INC_PATH)

 

连接器-->常规-->附加库目录,添加

 

$(CUDA_PATH)/lib/$(PlatformName)

 

 

链接器-->输入-->附加依赖项,添加

 

cudart.lib

 

确定!

现在就可以创建/使用/编译*.cu文件了。

4.右键项目名称,添加-->新建项-->C++文件-->修改名称及后缀=>*.cu

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 <stdio.h>
 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[i] = (float)i;
22         Y_h[i] = 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 <<<1, 64 >>>(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[i]);
32     cudaFree(X_d);
33     cudaFree(Y_d);
34     free(X_h);
35     free(Y_h);
36     system("Pause");
37     return 0;
38 }

7.在调试模式下启动,观察结果。到此结束。

自己跑的文件下载链接

转载于:https://www.cnblogs.com/liangliangdetianxia/p/3978955.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/375609.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

MVC,MVP 和 MVVM 的图示

复杂的软件必须有清晰合理的架构&#xff0c;否则无法开发和维护。 MVC&#xff08;Model-View-Controller&#xff09;是最常见的软件架构之一&#xff0c;业界有着广泛应用。它本身很容易理解&#xff0c;但是要讲清楚&#xff0c;它与衍生的 MVP 和 MVVM 架构的区别就不容易…

(Android Studio)添加文本框

此文大部分摘自http://hukai.me/android-training-course-in-chinese/basics/firstapp/building-ui.html android : id 这是定义View的唯一标识符。可以在程序代码中通过该标识符对对象进行引用&#xff0c;例如对这个对象进行读和修改的操作(在下一课里将会用到)。 当想从XML里…

听GPT 讲Rust源代码--src/tools(24)

File: rust/src/tools/clippy/clippy_lints/src/types/borrowed_box.rs 在Rust源代码中的rust/src/tools/clippy/clippy_lints/src/types/borrowed_box.rs文件是Clippy项目的一个规则&#xff0c;用于检查可能是误用或错误的Box引用情况。 Rust中的Box是一个堆分配的值的所有权…

【转】漫谈ANN(2):BP神经网络

上一次我们讲了M-P模型&#xff0c;它实际上就是对单个神经元的一种建模&#xff0c;还不足以模拟人脑神经系统的功能。由这些人工神经元构建出来的网络&#xff0c;才能够具有学习、联想、记忆和模式识别的能力。BP网络就是一种简单的人工神经网络。我们的第二话就从BP神经网络…

笑男手札:SharePoint 2013 单一服务器场环境恢复数据库内容

SharePoint 2013 单一服务器场环境恢复数据库内容 笑男的公司服务很多客户&#xff0c;当然&#xff0c;这些客户都很挑剔&#xff0c;所以一般情况下生产&#xff08;Prod&#xff09;环境的服务是不能停的。 当然&#xff0c;如果你将包含相同网站集的数据库连接到同一个服务…

图解 深入浅出 JavaWeb:Servlet 再说几句

Writer &#xff1a;BYSocket&#xff08;泥沙砖瓦浆木匠&#xff09; 微 博&#xff1a;BYSocket 豆 瓣&#xff1a;BYSocket FaceBook&#xff1a;BYSocket Twitter &#xff1a;BYSocket 上一篇的《 Servlet必会必知 》受到大家一致好评 — (感谢 读…

!+\v1 用来“判断浏览器类型”还是用来“IE判断版本”的问题!

这种写法是利用各浏览器对转义字符"\v"的理解不同来判断浏览器类型。在IE中&#xff0c;"\v"没有转义&#xff0c;得到的结果为"v"。而在其他浏览器中"\v"表示一个垂直制表符&#xff0c;所以ie解析的"\v1" 为 "v1&quo…

这么多个月,我头一次体验用类的概念来写驱动

原来感觉一样是那么爽阿。。。快乐得不得了。。。转载于:https://www.cnblogs.com/suanguade/p/4038190.html

$ npm install opencv ? 你试试?! 在windows环境下,使用node.js调用opencv攻略

博主之前写过一篇文章《html5与EmguCV前后端实现——人脸识别篇》&#xff0c;叙述的是opencv和C#的故事。最近在公司服务器上更新了一套nodejs环境&#xff0c;早就听闻npm上有opencv模块&#xff0c;便欲部署之。然而opencv的部署似乎从来都不会那么顺利...... 找模块上https…

Win7安装vs2010失败

提示&#xff1a; --------------------------------------------------------------------------------------------------------------------------------------- 解决方法&#xff1a;开始运行中regedit打开注册表找到HKEY_LOCAL_MACHINE/System/CurrentControlSet/Control …

调光设备术语:调光曲线(转)

源&#xff1a;调光设备术语&#xff1a;调光曲线 核心提示&#xff1a;调光曲线是调光设备重要的参数之一&#xff0c;它直接影响到了灯光输出的效果&#xff0c;是数字化调光设备性能的体现。上面这句话包含了三点内容&#xff0c;我们逐条解析。 调光曲线是调光设备重要的参…

TCP/IP三次握手与四次握手

原文地址 http://blog.csdn.net/whuslei/article/details/6667471 http://blog.csdn.net/wo2niliye/article/details/48447933 建立TCP需要三次握手才能建立&#xff0c;而断开连接则需要四次握手。整个过程如下图所示&#xff1a; 先来看看如何建立连接的。 首先Client端发送连…

vim支持nginx语法高亮

下载nginx源码&#xff0c;解压之后&#xff0c;将contribu/vim/*拷贝到~/.vim/目录&#xff0c;如果没有~/.vim/目录&#xff0c;则创建即可。 cp -r contrib/vim/* ~/.vim/或 mkdir -p ~/.vim/ cp -r contrib/vim/* ~/.vim/此时再打开conf/nginx.conf就可以看到已经语法高亮…

C语言操作mysql

php中 mysqli, pdo 可以用 mysqlnd 或 libmysqlclient 实现 前者 从 php 5.3.0起已内置到php中, 并且支持更多的特性&#xff0c;推荐用 mysqlnd mysqlnd &#xff0c; libmysqlclient 对比&#xff1a;http://php.net/manual/en/mysqlinfo.library.choosing.php mysqlnd 目前是…

每日温度

根据每日 气温 列表&#xff0c;请重新生成一个列表&#xff0c;对应位置的输出是需要再等待多久温度才会升高超过该日的天数。如果之后都不会升高&#xff0c;请在该位置用 0 来代替。 例如&#xff0c;给定一个列表 temperatures [73, 74, 75, 71, 69, 72, 76, 73]&#xf…

什么是Modbus

什么是Modbus 1. Modbus如何工作 Modbus是通过设备之间的几根连线来传递数据&#xff0c;最简单的设置就是主站和从站之间用一跟串口线相连。数据通过一串0或者1来传递&#xff0c;也就是位。0为正电压&#xff0c;1为负电压。位数据传递速度非常快&#xff0c;常见的传输速度为…

Android实例-拍摄和分享照片、分享文本(XE8+小米2)

结果&#xff1a; 1.分享文本不好使&#xff0c;原因不明。有大神了解的&#xff0c;请M我&#xff0c;在此十分感谢。 2.如果想支持图片编辑&#xff0c;将Action事件的Editable改为True。 相关资料&#xff1a; 官网地址&#xff1a;http://docwiki.embarcadero.com/RADStudi…

go语言 expected ; found a

错误代码&#xff0c;这是一段测试go语言类型转换的代码 package type_testimport "testing"type MyInt int64func TestImplicit(t *testing.T) {var a int32 1var b int64 3b (int64)avar c MyInt 4// c bt.Log(a, b, c) }报错代码 b (int64)a改正 b int6…

win8 metro 调用摄像头拍摄照片并将照片保存在对应的位置

刚刚做过这类开发&#xff0c;所以就先献丑了&#xff0c;当然所贴上的源代码都是经过验证过的&#xff0c;已经执行成功了&#xff0c;希望能够给大家一些借鉴&#xff1a; 以下是metro UI代码&#xff1a; <Pagex:Class"Camera.MainPage"xmlns"http://sche…

poj 3678 Katu Puzzle(2-sat)

Description Katu Puzzle is presented as a directed graph G(V, E) with each edge e(a, b) labeled by a boolean operator op (one of AND, OR, XOR) and an integer c (0 ≤ c ≤ 1). One Katu is solvable if one can find each vertex Vi a value Xi (0 ≤ Xi ≤ 1) suc…