I’m running Ubuntu 18.04 and have CUDA 10.2 with runfile installation . After updating some packages including a libnvidia-compute-440 via the Ubuntu software center, I get the following output to
Failed to initialize NVML: Driver/library version mismatch
I rebooted the system, still got the errors. Running
dmesg |tail -4 gives
NVRM: API mismatch: the client has the version 440.59, but NVRM: this kernel module has the version 440.33.01. Please NVRM: make sure that this kernel module and all NVIDIA driver NVRM: components have the same version.
The version of the
libnvidia-compute-440 package that I have is indeed 440.59 now, but my drivers version is 440.33.01 as
dmesg |grep nvidia (or similar commands that I’ve tried) shows (see on third line)
[ 16.462737] nvidia-nvlink: Nvlink Core is being initialized, major device number 237 [ 16.463235] nvidia 0000:03:00.0: enabling device (0006 -> 0007) [ 16.785628] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms 440.33.01 Tue Nov 12 23:43:11 UTC 2019 [ 16.916202] [drm] [nvidia-drm] [GPU ID 0x00000300] Loading driver [ 16.916205] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:03:00.0 on minor 1
In fact, by looking at
/var/log/apt/history.log I could see that libnvidia-compute-440 was updated from
440.59-0ubuntu0.18.04.133.01. All these evidence led me to the conclusion that I could try to go back to the previous version of that library, however
apt-get install libnvidia-compute-440=440.33.01 (which I think it’s the right syntax) gave me
E: Version '440.33.01' for 'libnvidia-compute-440' was not found.
I’m really hoping that a solution which doesn’t imply uninstalling CUDA exists, since installing it took me a weekend.