当前位置: 首页 > news >正文

东莞保安公司投诉电话南宁seo外包服务

东莞保安公司投诉电话,南宁seo外包服务,自己做的网站怎么放到小程序,四川省工程造价信息网官网vs创建基于GPU编程的项目 🍊前言🐸方法一-CUDA Runtime生成😝debug设置 🍅方法二-空项目配置🍉🍉🍉代码验证 🍊前言 cuda以及cudnn的安装以及系统环境变量的配置默认已经做完。如果…

vs创建基于GPU编程的项目

  • 🍊前言
  • 🐸方法一-CUDA Runtime生成
    • 😝debug设置
  • 🍅方法二-空项目配置
  • 🍉🍉🍉代码验证

🍊前言

cuda以及cudnn的安装以及系统环境变量的配置默认已经做完。如果没有安装好配置好的,可以参考其他的博客。本博客只为记录在完成以上配置后,如何在vs端创建GPU编程的项目。

🐸方法一-CUDA Runtime生成

我们打开vs,点击创建新项目:
在这里插入图片描述
然后在右侧选择到cuda runtime,具体是什么版本 看你装的是什么版本 因人而异:
在这里插入图片描述
创建完毕后,软件会自动生成一段基于GPU编程的代码,运行之后如果能正常出结果,说明你的CUDA安装和CUDNN的安装与系统环境配置没有问题了:
在这里插入图片描述
运行这个.cu后缀名的代码,得到结果:
在这里插入图片描述
则说明我们的第一个CUDA编程的代码跑通了。

😝debug设置

我们创建完项目之后,正常运行没问题的话,就可以开始完成我们的GPU编程了,但在写代码的过程中,难免会遇到bug,这时候如果我们想通过打断点的方式去调试,程序却无法在断点处终止,而是每次都执行完毕,这是因为我们创建的项目默认给我们设置了无法debug的模式,我们只需要点击项目:
在这里插入图片描述
打开项目属性:
在这里插入图片描述
把红箭头指向的地方选择是。
在这里插入图片描述
这边也同样将选择的地方选择成是。

🍅方法二-空项目配置

创建好之后,我们右键项目名称,选择生成依赖项,再选择生成自定义:
在这里插入图片描述
勾选我们想要的CUDA版本。
点击空项目创建好项目之后,右键源文件,创建一个.cu为后缀名的代码文件:
在这里插入图片描述
名称自己随便定义。
右键点击刚才创建好的.cu后缀名的文件,选择属性,点击常规,在项类型中选择CUDA C/C++即可:
在这里插入图片描述
然后打开项目属性页,开始配置路径:
首先是包含目录:
在这里插入图片描述
然后是库目录:
在这里插入图片描述
然后是链接器的附加库目录:
在这里插入图片描述
然后,我们在桌面或者随便在哪个可以创建txt的地方,新建一个txt文件夹,命名为res.txt:
在这里插入图片描述
将这个txt复制到这个路径下:
在这里插入图片描述
打开终端,cd到这个路径里面,输入:

DIR *.lib /B > res.txt

在这里插入图片描述
然后我们再打开res.txt,则可以发现里面已经写入了这个路径下的所有lib依赖项的名字了。
在这里插入图片描述
然后我们复制所有的这些名称,拷贝到链接器-输入的附加依赖项中:
在这里插入图片描述
最后点击应用,然后确定。
最后记得将这两个位置设置成一样的:
在这里插入图片描述
设置debug的方式见方法一的最后。

🍉🍉🍉代码验证

这里我们准备一串基于GPU编程的代码:

#include <device_launch_parameters.h>
#include <cuda_runtime.h>
#include <iostream>
#include <cuda.h>
#include <vector>using namespace std;//基于GPU的矢量求和
#define N 10__global__ void add(int* a_ptr, int* b_ptr, int* c_ptr)
{int tid = blockIdx.x;if (tid < N){c_ptr[tid] = a_ptr[tid] + b_ptr[tid];}
}int main()
{/*std::vector<int> a(N), b(N), c(N);int* a_ = &a[0], * b_ = &b[0], * c_ = &c[0];*/int a[N], b[N], c[N];int* a_ptr, * b_ptr, * c_ptr;//在CPU上分配内存cudaMalloc((void**)&a_ptr, N * sizeof(int));cudaMalloc((void**)&b_ptr, N * sizeof(int));cudaMalloc((void**)&c_ptr, N * sizeof(int));//在cpu上为数组赋值for (int i = 0; i < N; i++){a[i] = -i;b[i] = i * i;}//将数组a和数组b复制到GPU上cudaMemcpy(a_ptr, a, N * sizeof(int), cudaMemcpyHostToDevice);cudaMemcpy(b_ptr, b, N * sizeof(int), cudaMemcpyHostToDevice);//N表示在执行核函数时使用的并行线程块的数量。add << <N, 1 >> > (a_ptr, b_ptr, c_ptr);//将运算结果从GPU拷贝到CPUcudaMemcpy(c, c_ptr, N * sizeof(int), cudaMemcpyDeviceToHost);//显示结果for (int i = 0; i < N; i++){cout << a[i] << "+" << b[i] << "=" << c[i] << endl;}cudaFree(a_ptr);cudaFree(b_ptr);cudaFree(c_ptr);return 0;
}

运行之后可以得到结果:
在这里插入图片描述
则说明基于GPU编程的项目创建成功了。

http://www.hengruixuexiao.com/news/54263.html

相关文章:

  • 六盘水做网站浙江网站建设平台
  • 网站seo分析案例千度搜索引擎
  • 聊城集团网站建设磁力蜘蛛搜索引擎
  • 服务好的企业建站拉新推广怎么快速拉人
  • 容易做的网站济南做seo排名
  • 青田县住房和城乡规划建设局网站手游推广平台哪个好
  • 前端自己做博客网站阿里指数app下载
  • 网站建设需要做些什么十大流量平台
  • 注册网站建设公司旅游推广赚佣金哪个平台好
  • sever2012 网站建设南宁seo收费
  • wordpress浮动图盐城seo营销
  • 社交网站开发项目计划报告厦门网站综合优化贵吗
  • wordpress清理插件贵港seo关键词整站优化
  • 网站欢迎页模板本地推广最有效的方法
  • 可靠的广州做网站种子搜索在线 引擎
  • 做蛋糕的网站在线培训系统
  • 网站建设的pest分析长尾关键词挖掘工具
  • 建设网站用什么好百度seo公司一路火
  • 美国二手表网站桂林网站设计
  • 贵阳网站开发制作公司低价刷粉网站推广
  • 运城手机网站建设网站优化怎么操作
  • 做网站的商标是哪类最佳bt磁力搜索引擎
  • 华久网站建设附近哪里有计算机培训班
  • 南昌网站排名小说排行榜百度搜索风云榜
  • 微信二维码制作网站学it什么培训机构好
  • 毕业设计做网站怎么做网站seo优化有哪些方面
  • 建材建设行业网站营销网络的建设怎么写
  • 企业如何建立网站好用的网站推荐
  • 网站公安备案需要几个工作日成都网站seo技术
  • 广告优化师发展前景广州关键词seo