cutlass

cutlass编译使用过程

cutlass使用cuda编写的矩阵乘法加速模板.github地址:click here

笔者第一次clone到本地的版本是当前最新的v3.0,但发现此版本对环境要求过高.如下:

  • NVIDIA CUDA Toolkit (11.4 or later required, 12.0 recommended)
  • CMake 3.18+
  • host compiler supporting C++17 or greater (minimum g++ 7.5.0)
  • Python 3.6+

cmake版本,在服务器反复尝试更新无果,最后发现可以使用anaconda来更新.由于清华源版本过低,使用

conda search cmake

获得channel中的可用cmake版本,随后(大概是)

conda install cmake=3.19.2

完成cmake的配置.然而CUDA版本却是个难题.实验室服务器使用的版本都是10.2,难以更改.思来想去,觉得这玩意不可能一上来就只能支持11.4+的版本,于是打开版本列表,果不其然就在2.11版本中,要求还是CUDA>=9.2.遂安装此版本.

依照Quickstart中的指示,应该执行

$ export CUDACXX=${CUDA_INSTALL_PATH}/bin/nvcc

$ mkdir build && cd build

$ cmake .. -DCUTLASS_NVCC_ARCHS=80               # compiles for NVIDIA Ampere GPU architecture

然而第三行出现了问题.提示无法找到nvcc.用

printenv CUDA_INSTALL_PATH

发现,此环境变量为空.(吐槽一句为什么啥都是空啊)

依照指引,寻得本地cuda目录应为/usr/local/cuda-10.2/bin/nvcc.替换掉上述指令后,提示compute_80为不支持的计算架构.

nvcc fatal: Unsupported gpu architecture 'compute_80'

求助搜索引擎得知这代表8.0及以上的计算能力,由于服务器显卡型号为GTX 1080,算力为6.1,故无法编译通过.(算力表,另,此处的conpute capability不是实际的计算能力大小,而是指GPU架构,决定了能执行的任务种类.)

实际上-DCUTLASS_NVCC_ARCHS=80就是设定了这一参数.在文档的中部,也给出了不同架构GPU的编译方法.选择

$ cmake .. -DCUTLASS_NVCC_ARCHS="60;61"          # compiles for NVIDIA Pascal GPU architecture

此后编译一切正常,cutlass安装成功.

原文链接: https://www.cnblogs.com/linxiaoshu/p/17074128.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    cutlass

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/314655

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月16日 下午1:26
下一篇 2023年2月16日 下午1:27

相关推荐