Не удалось установить CUDA после снижения драйвера Nvidia на Ubuntu 16.04

Недавно я получил CUDA, обновленный до версии 9.2 и драйвера Nvidia к nvidia-396 с регулярным автоматическим обновлением на моей Ubuntu 16.04, к которой поддерживающий Optimus ноутбук, с видеоадаптером Intel, активным по умолчанию и Nvidia, получил доступ через шмеля. Вскоре после я попытался выполнить CUDA apllication (использование optirun <command>), и найденный им не работает.

Первая вещь, которую я сделал, заменяла все записи "nvidia-390" (если я помню право, это было 390) в /etc/bumblebee/bumblebee.conf к "nvidia-396" - это помогло мне прежде несколько раз.

Все еще не работает (Cannot access secondary GPU - error: Could not load GPU driver). dmesg, и существует причина:

[  314.733284] NVRM: The NVIDIA GeForce GT 520M GPU installed in this system is
               NVRM:  supported through the NVIDIA 390.xx Legacy drivers. Please
               NVRM:  visit http://www.nvidia.com/object/unix.html for more
               NVRM:  information.  The 396.26 NVIDIA driver will ignore
               NVRM:  this GPU.  Continuing probe...

Да, мой ноутбук довольно стар, но с SSD и 12 Гбит RAM я все еще не чувствую много потребности заменить его. Хорошо, похож затем, я должен жить с nvidia-390:

sudo apt install nvidia-390

Был сказан, что много зависимых пакетов будет удалено, включая, кажется, весь CUDA 9.2.Черт. Настолько, вероятно, я застреваю с CUDA 9.0 также. Так, после удаления всего (и регистрация в синаптическом никакие пакеты от nvidia-396 или cuda-9.2 не оставляют) я попытался вернуть его:

sudo dpkg -i cuda-repo-ubuntu1604_9.0.176-1_amd64.deb
sudo apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/7fa2af80.pub
sudo apt-get update
sudo apt-get install cuda

согласно https://developer.nvidia.com/cuda-90-download-archive? target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1604&target_type=debnetwork

Три команды хорошо, но последняя... Хьюстон, у нас есть проблема!

$ sudo apt install cuda
Reading package lists... Done
Building dependency tree       
Reading state information... Done
E: Unable to locate package cuda

Я попробовал решение из ответа на этом CUDA 8 Установки на Ubuntu 16: Не мог определить местоположение пакета cuda вопрос, который является:

dpkg -l | grep '^rc' | awk '{print $2}' | sudo xargs dpkg --purge

Это действительно чистило действительно много материала, включая некоторых от связанных пакетов cuda-9.2. Однако проблема все еще там - я не могу установить CUDA снова, неважно, я пробую 9.0 или другая версия.

Какие-либо идеи?

1
задан 27 May 2018 в 15:00

3 ответа

Это - новая проблема:

  • предоставленный NVIDIA deb файл содержит драйвер 396.26 как требуется CUDA 9.2.88.
  • Версия, установленная человечностью, 396.24.
  • система пакета человечности устанавливает зависимости, таким образом, что пакет Nvidia, даже более новая версия, не может перезаписать ту, установленную человечностью.
  • ЕСЛИ можно достать предварительный выпуск пакета драйвера человечности 396.26 ЗАТЕМ

    1. Вы могли установить предварительный выпуск человечности (возможно, должен был бы играть с ним в синаптическом для получения установленного права),
    2. можно сделать первые три шага в debnetwork инструкциях как показано
    3. Вместо sudo apt-get install cuda войдите синаптический, поиск нижнего регистра cuda (он существует!), отметьте его, чтобы быть установленными и обновите его зависимости.
    4. У Вас затем будут все необходимые файлы добавленными, кроме cuda связывают Вас нажатый, будет поврежден (потому что он не мог установить свою собственную версию 396,26).
    5. Это в порядке: это - метапакет, это не должно на самом деле быть установлено, точно вид. Mark его для удаления. Когда Вы совершаете нападки, применяются, синаптический может блевать на остатках мертвого пакета, который выглядит плохо, но имеет побочный эффект удаления его трупа. Попробуйте еще раз и если это было единственным поврежденным пакетом, установка willl работа.
    6. В зависимости от чего еще Вы установили в том, какой порядок, можно получить, чтобы играть в подобную логическую игру, избавляющуюся от других поврежденных пакетов, но это выполнимо. Я настоятельно рекомендую не перезагрузить, пока у Вас нет их в порядке. Я уверен, что Вы будете скоро видеть официальный выпуск. Если бы только Вы могли бы найти предрелизную копию, которая была бы хороша...
      https://launchpad.net / ~ bstudent / + archive/ubuntu/nvidia-graphics-drivers-396.26-copy-of-staging-ppa-20180522
1
ответ дан 7 December 2019 в 15:18

Вот более старое обходное решение NVIDIA и CUDA как решение для всего распознавания карт Optimus.

Необходимо удалить сначала установленные драйверы Nvidia, перезагрузку без драйверов Nvidia. Затем для продолжения как здесь описано в следующей ссылке. Это - humblesome, но это работает решением для Вашего более старого чипсета.:

Как я могу Установить драйвер GT 520 Nvidia и Cuda 5.0 в Ubuntu13.04?

0
ответ дан 7 December 2019 в 15:18

Ну, через некоторое время я смог работать вокруг этой проблемы. Что точно я сделал:

  • Очищенный все содержащее cuda в Синаптическом.
  • Принудительный cuda-drivers версия пакета к 390.xx в Синаптическом.
  • Сделал apt update затем dpkg --configure -a разрешить поврежденные зависимости, затем apt update снова.

  • Затем sudo apt install cuda действительно работал, но все еще предложил мне, чтобы установить cuda 9.2 и обновить до nvidia-396 в процессе, несмотря на я заблокировал драйвер. Но sudo apt install cuda-9-1 не сделал compain и позволил мне устанавливать CUDA 9.1 с nvidia-390 (Я нашел, что 9,1 драйверов также работают с nvidia-390, вот почему не 9.0).

После этого (и перезагрузка), все мои приложения CUDA действительно работают с optirun до сих пор.:)

Единственное незначительное раздражение, с которым я встретился позже, является этим apt dist-upgrade все еще предлагаемый меня для обновления nvidia-390 (но регулярный apt upgrade не сделал). Разрешенный та проблема с apt-mark hold nvidia-390, и пакет появляется теперь, как "заблокировано" в Синаптическом также. Кроме того, даже если я пытаюсь работать apt install cuda вручную, теперь это бросает ошибку:

The following packages have unmet dependencies:
 cuda : Depends: cuda-9-2 (>= 9.2.148) but it is not going to be installed
E: Unable to correct problems, you have held broken packages.

но на самом деле нет никаких поврежденных пакетов пакетов, таким образом, это похоже теперь, что я также в безопасности от установки несправедливости версия CUDA случайно.

0
ответ дан 7 December 2019 в 15:18

Другие вопросы по тегам:

Похожие вопросы: