安装CUDA+CUSP环境,并创建第一个HelloWord入门工程

277 阅读3分钟

目录

安装CUDA环境

常见报错

nvcc fatal : Cannot find compiler 'cl.exe' in PATH

CUDA编程系列教程

创建HelloWord工程

cusp计算库安装



安装CUDA环境

可以参考教程:保姆级的CUDA的下载安装使用,详细的环境变量配置,不仅仅让你能够安装,还会教你弄懂为什么要这样安装 - 知乎

也可参考官网:docs.nvidia.com/cuda/cuda-i…

装完环境,第一个Helloword工程可参考下面部分。


常见报错

nvcc fatal : Cannot find compiler 'cl.exe' in PATH

可以参考这篇文章:blog.csdn.net/qq_40993412…

CUDA编程系列教程

从头开始,CUDA工程结构讲的比较详细:

GPU编程自学1 —— 引言_shuzfan的博客-CSDN博客

CUDA从入门到精通教程:

【CUDA开发】CUDA从入门到精通_Zhang_P_Y的博客-CSDN博客_cuda开发


创建HelloWord工程

下面是更详细第一个工程创建步骤:

1、打开visual studio,新建项目,选择cuda

自动创建的“kernel.cu”文件,是一个经典的 矢量相加 的GPU程序,我们不需要,因此将main函数中代码注释。然后加入自己的代码:

#include <iostream>

__global__  void mkernel(void){}

int main()
{
    mkernel <<<1,1>>>();
    std::cout<<"Hello, World!"<<std::endl;
    system("pause");
    return 0;
}

然后运行,即可得到结果

 具体结构解析,可以看上面《GPU编程自学》系列。

cusp计算库安装

有些同学还会用到cusp库,由于只是库文件,因此不需要编译,安装较为简单。

官网:CUSP: Quick Start Guide (cusplibrary.github.io)

首先根据上面第一节“安装CUDA环境”完成环境安装。

再下载源码:

官方仓库,注意要使用develop分支,不然当cuda大于版本9后,编译会报错:cusplibrary/cusplibrary: CUSP : A C++ Templated Sparse Matrix Library (github.com)https://github.com/cusplibrary/cusplibrary

注意直接选“code - download ZIP”!!!

下载完成后,参考官方文档,将cusp文件夹放入到:

 我电脑win11上路径为:C:\Program Files\NVIDIA GPU Computing Toolkit\CUDA\v11.7\include

 然后就可以参考上面“创建HelloWord工程”一节,在项目中引用,不需要额外操作:

#include <cusp/coo_matrix.h>
#include <cusp/csr_matrix.h>
#include <cusp/dia_matrix.h>
#include <cusp/ell_matrix.h>
#include <cusp/hyb_matrix.h>
#include <cusp/print.h>
#include <cusp/io/matrix_market.h>
#include <iostream>
#include <cusp/array1d.h>
#include <cusp/array2d.h>
#include <cusp/multiply.h>
#include <chrono>

常见报错

thrust blocking.h No such file or directory

经过多重折腾,终于发现cusp使用了很老的thrust,在thrust仓库的“old-master”分支。

把它下载下来,首先可以尝试替换CUDA Toolkits中的thrust,如果编译通过,那就还好;如果还是报错,那就降低一下CUDA Toolkits的版本吧。。。注意降低CUDA版本,同时也要降低Visual Studio的版本,总之就是非常麻烦。。。

thrust-old-master仓库:NVIDIA/thrust at old-main (github.com)

最后终于运行成功了,环境如下:

  • CUSP选cuda10仓库

  • CUDA安装10.2版本

  • Visual Studio安装2019 16.x版本

  • 添加一系列环境变量:

    • 先参考这篇文章添加一些:blog.csdn.net/qq_40993412…

    • 再在系统变量的PATH中添加:

      E:\Visual Studio\2019\Community\VC\Tools\MSVC\14.29.30133\bin\Hostx64\x64
      E:\Visual Studio\2019\Community\Common7\IDE
      

找了下相关链接:

CUDA Toolkit 10.2 下载| NVIDIA Developer

CUDA Toolkit 文档(nvidia.com)

Visual Studio 2019 下载- Visual Studio Subscriptions Portal

cusplibrary/cusplibrary at cuda10 (github.com)