no kernel image is available

在使用到显卡跑pytorch相关代码时候,会出现这样的一个问题
no kernel image is available 。这个是两种情况导致的,在你使用setup
build你的项目时候,pytorch自动检测你当前的gpu算力并将其作为目前你电脑gpu的算力,pytorch源码如下:


no kernel image is available

 

也就是说出现no kernel image is availabl 第一种情况你在a卡build,却在b卡跑,第二种情况是你用了多张算力不同的卡。

 

解决方法:找到你目前gpu的型号并在 (https://developer.nvidia.com/cuda-gpus).
 取找到算力,然后用export TORCH_CUDA_ARCH_LIST方式去编译
 更简单的是,直接修改pytorch源码(虽然不咋规范,不过在gpu不换情况下不会出问题),将arch_list赋值为你的算力比如['3.5','7.0']。pytorch文件在
site-packages/torch/utils/cpp_extension.py" 1300 行左右

图片