解決CUDA driver version is insufficient for CUDA runtime version
問題
在伺服器上安裝mxne的GPU版本
sudo pip install mxnet-cu80==1.2.1
然後在gpu上建立資料
import mxnet as mx
mx.nd.array([0], ctx = mx.gpu())
發現報錯。
mxnet.base.MXNetError: [14:40:28] src/storage/storage.cc:119: Check failed: e == cudaSuccess || e == cudaErrorCudartUnloading CUDA: CUDA driver version is insufficient for CUDA runtime version
原因
CUDA版本對顯示卡驅動版本有要求,見如下連結。
https://docs.nvidia.com/cuda/cuda-toolkit-release-notes/index.html
cat /proc/driver/nvidia/version看了一下伺服器的顯示卡驅動,發現版本比較低,是352.39,只能安裝CUDA7.5,而我裝的是8.0的cuda。
NVRM version: NVIDIA UNIX x86_64 Kernel Module 352.39 Fri Aug 14 18:09:10 PDT 2015
GCC version: gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1)
解決方法
第一種方法是把顯示卡驅動更新一下。
(1)nvidia-smi -L檢視自己的顯示卡型號。
(2)然後在https://www.nvidia.cn/Download/index.aspx?lang=cn中下載相應驅動。
(3)安裝驅動。
第二種方法是安裝cuda 7.5。
(1)首先在https://developer.nvidia.com/cuda-toolkit-archive中根據機子環境,下載相應的cuda 7.5安裝檔案,我下的是sh檔案。
(2)然後安裝cuda 7.5。
(3)最後sudo pip install mxnet-cu80==1.2.1安裝cuda 7.5的mxnet版本即可。