Недавнее обновление ядра повредило мою установку Cuda (это хорошо работает, если я загружаю более старое ядро) - очень похожие установки сохранились через обновления ядра на других машинах, при этом существенное различие было то, что этой установкой является Сервер Ubuntu, и другие - Рабочий стол Ubuntu. Это походит на проблему DKMS? Или что-то еще? Как я могу заставить свои cuda модули создавать себя против новых ядер?
У меня есть Ubuntu 16.04, Cuda 10.0 (установленный локальным .deb), драйвер 410.48 Nvidia (установленный автоматически во время установки cuda) и 2080Ti GPU
$ ls -al /boot
total 111740
drwxr-xr-x 3 root root 4096 Apr 9 12:02 .
drwxr-xr-x 24 root root 4096 Apr 4 16:53 ..
-rw-r--r-- 1 root root 1252376 Jan 16 23:29 abi-4.4.0-142-generic
-rw-r--r-- 1 root root 190580 Jan 16 23:29 config-4.4.0-142-generic
-rw-r--r-- 1 root root 190580 Mar 26 14:02 config-4.4.0-145-generic
drwxr-xr-x 5 root root 4096 Apr 9 12:02 grub
-rw-r--r-- 1 root root 50832836 Apr 4 16:54 initrd.img-4.4.0-142-generic
-rw-r--r-- 1 root root 39170185 Apr 9 11:15 initrd.img-4.4.0-145-generic
-rw-r--r-- 1 root root 182704 Jan 28 2016 memtest86+.bin
-rw-r--r-- 1 root root 184380 Jan 28 2016 memtest86+.elf
-rw-r--r-- 1 root root 184840 Jan 28 2016 memtest86+_multiboot.bin
-rw-r--r-- 1 root root 255 Jan 16 23:29 retpoline-4.4.0-142-generic
-rw------- 1 root root 3904797 Jan 16 23:29 System.map-4.4.0-142-generic
-rw------- 1 root root 3906115 Mar 26 14:02 System.map-4.4.0-145-generic
-rw------- 1 root root 7184032 Jan 16 23:29 vmlinuz-4.4.0-142-generic
-rw------- 1 root root 7188984 Mar 27 10:03 vmlinuz-4.4.0-145-generic
$ dkms status
bbswitch, 0.8, 4.4.0-142-generic, x86_64: installed
bbswitch, 0.8, 4.4.0-145-generic, x86_64: installed
nvidia-410, 410.48, 4.4.0-142-generic, x86_64: installed
$ ls -al /usr/src
total 44
drwxr-xr-x 11 root root 4096 Apr 9 12:02 .
drwxr-xr-x 12 root root 4096 Mar 14 12:56 ..
drwxr-xr-x 2 root root 4096 Mar 14 11:05 bbswitch-0.8
drwxr-xr-x 5 root root 4096 Mar 14 14:55 cudnn_samples_v7
drwxr-xr-x 3 root root 4096 Mar 14 12:56 gmock
drwxr-xr-x 4 root root 4096 Mar 14 12:56 gtest
drwxr-xr-x 27 root root 4096 Feb 27 18:41 linux-headers-4.4.0-142
drwxr-xr-x 7 root root 4096 Feb 27 18:43 linux-headers-4.4.0-142-generic
drwxr-xr-x 27 root root 4096 Apr 4 16:53 linux-headers-4.4.0-145
drwxr-xr-x 7 root root 4096 Apr 4 16:53 linux-headers-4.4.0-145-generic
drwxr-xr-x 8 root root 4096 Mar 14 14:49 nvidia-410-410.48
$ ls -alR /var/lib/dkms
[Very long output] https://pastebin.com/RRMsBT0s
$ dkms состояние
bbswitch, 0.8, 4.4.0-142-generic, x86_64: installed
bbswitch, 0.8, 4.4.0-145-generic, x86_64: installed
nvidia-410, 410.48, 4.4.0-142-generic, x86_64: installed
Это показывает нам, что драйвер nvidia-410 dkms не основывался на 4.4.0-145-универсальном ядре. Должна быть 4-я строка, которая похожа:
nvidia-410, 410.48, 4.4.0-145-generic, x86_64: installed
Кто знает, почему это не основывалось на-145 ядрах... там СУЩЕСТВУЕТ dkms.conf файл.
Cuda 10.0 может быть загружен отсюда. Документ установки здесь.
Загрузите пакет Cuda и переустановите его. Затем сделайте a dkms status
управляйте и проверьте, что это показывает 4-ю строку, как я показываю выше.
Примечание: если Вы хотели бы более новую версию драйвера Nvidia, последняя версия 418.56. Я не могу сказать, совместимо ли это с Cuda 10.0.
Примечание: если существует ошибка в пакете (пакетах) программного обеспечения Cuda/Nvidia, Вам, вероятно, придется сделать этот каждый раз, когда ядро обновляется :-(
Обновление № 1:
Недавние обновления заставили видеодрайвер Nvidia 410 не основываться на текущем ядре.
Cuda 10.0 устанавливает видеодрайвер Nvidia 410.
Cuda 10.1 установлен с видеодрайвером Nvidia 418.
Cuda 10.1 имеет проблемы с tensorflow.
Пользователю нужен Cuda 10.0 с рабочим видеодрайвером Nvidia.
Пользователь запрашивает дальнейшую справку от Nvidia.
Обновление № 2:
Попробуйте это...
Удалите Cuda 10.1 и видеодрайвер 418.
Переустановите Cuda 10.0 и видеодрайвер 410.
Это отложит Вас к начинающемуся состоянию.
Давайте попытаемся создать 410 драйверов вручную...
sudo dkms build nvidia-410/410.48
# сборка может перестать работать, но привести нам причину
sudo dkms install nvidia-410/410.48
# выполненный, если сборка является чистой
dkms status
# проверьте 410 установок на текущем ядре
Обновление № 3:
Оказалось, что, устанавливая любой Cuda 10.0/10.1 автоматически не устанавливал видеодрайверы Nvidia и визу-versa.
Конечное решение состояло в том, чтобы пользователь вручную установил необходимый Cuda 10.0, и вручную установите последний видеодрайвер Nvidia 418.56, и это все работает снова.