您的位置:首页 > 新闻 > 热点要闻 > 常德论坛网站_百度域名值多少钱_网站为什么要做seo_网站推广公司哪家好

常德论坛网站_百度域名值多少钱_网站为什么要做seo_网站推广公司哪家好

2024/10/12 10:15:58 来源:https://blog.csdn.net/qq_51955445/article/details/142730355  浏览:    关键词:常德论坛网站_百度域名值多少钱_网站为什么要做seo_网站推广公司哪家好
常德论坛网站_百度域名值多少钱_网站为什么要做seo_网站推广公司哪家好

安装cuda

CUDA Toolkit Downloads | NVIDIA Developer

这里网上教程多的是,在这个网址下载安装即可

我这台电脑因为重装过,所以省去了安装步骤,但是要重新配置环境变量。我重新找到了重装之前的CUDA位置(关注这个bin文件夹所在的目录)
在这里插入图片描述
在环境变量中添加了两个变量(这个V11_7我也不知道干嘛的,看别人一键安装教程里面有这种变量,所以也加上了),并在Path中添加bin目录 %CUDA_PATH%\bin 。接着在 cmd 内输入 nvcc --version ,能输出版本号就说明配置好了。
在这里插入图片描述

然后就是最关键的,因为脱离了VS,所以待会编译时会报错Cannot find compiler 'cl.exe' in PATH。通过 everything 软件查到 cl.exe 在 VS 的相关目录中(微软真该死),于是在 Path 中再加上这个目录就好了。
在这里插入图片描述
于是Path最终加上了:
在这里插入图片描述

开始写代码

创建main.cu,填入下面的代码。
这段代码使用了 cuda 相关库,对两个数组使用 cudaMalloc 申请内存,并为数组添加元素,成为[0, 1, 2, 3, …, 99]。接着通过 vec_add 开启多个线程并行处理多个数组元素,然后使用 cudaDeviceSynchronize 等待所有线程结束,再继续下面的输出流程。

我们输入nvcc -o main .\main.cu,编译得到main.exe、main.exp、main.lib
接着运行 main.exe ,控制台打印运行结果,即 0 2 4 6 … 198

#include <iostream>
#include <cuda_runtime.h>
#include <device_launch_parameters.h>using namespace std;__global__ void vec_add(int *a, int *b)
{int i = blockIdx.x;a[i] += b[i];
}int main()
{const int N = 100;// ---- allocate the memory ---- //int *a, *b;cudaMallocManaged(&a, N*sizeof(int));cudaMallocManaged(&b, N*sizeof(int));// ---- initialize a,b ---- //for(int i=0;i<N;i++){a[i] = i;b[i] = i;}// ---- add b to a ---- //vec_add<<<N,1>>>(a,b);cudaDeviceSynchronize();// ---- display a ---- //for(int i=0;i<N;i++){cout << a[i] << endl;}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com