在 GPU 上 运行 火炬预测模型时出错

Error when running torch prediction model on GPU

我一直在尝试使用特定的预训练机器学习模型为图片添加字幕。我一直在使用 https://github.com/unnonouno/densecap .

它带有一个 Dockerfile 设置整个 cuda/torch/cudnn 环境。

新图片的预测由 运行 run_model.lua 脚本进行。当通过传递 -gpu -1 在 CPU 上 运行 它确实有效,但在 GPU 上删除争论和 运行 它时无效。在这种情况下,我收到以下错误:

THCudaCheck FAIL file=/tmp/luarocks_cutorch-scm-1-8398/cutorch/lib/THC/THCGeneral.c line=70 error=35 : CUDA driver version is insufficient for CUDA runtime version
/root/torch/install/bin/luajit: 
/root/torch/install/share/lua/5.1/trepl/init.lua:389: loop or previous error loading module 'cutorch'
stack traceback:
    [C]: in function 'error'
    /root/torch/install/share/lua/5.1/trepl/init.lua:389: in function 'require'
    ./densecap/utils.lua:26: in function 'setup_gpus'
    run_model.lua:145: in main chunk
    [C]: in function 'dofile'
    /root/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:150: in main chunk
    [C]: at 0x00406670

我尝试了不同的方法,例如通过运行 luarocks install cudnn 重新安装 cudnn 或从 cudnn5 降级到 cudnn4 但没有任何成功。

问题似乎出在您的 CUDA 驱动程序上:

CUDA driver version is insufficient for CUDA runtime version

看看类似的讨论here

无需更改您的 cuDNN 版本。您只需要纠正您的 CUDA driver/toolkit 兼容性。