Как установить CUDA 10 вместе с существующим CUDA 11? [закрыто]

Я пытаюсь установить CUDA 10 в ядро ​​Kaggle и всегда получаю сообщение об ошибке:

! DEBIAN_FRONTEND = noninteractive sudo apt install -y cuda-10.2

Не удалось загрузить динамическую библиотеку ' libcudart.so.10.0 '

В Kaggle установлен ' Linux-5.4.120 + -x86_64-with-debian-buster-sid ' и CUDA 11.0. Как установить CUDA 10 наряду с существующим CUDA 11?

Я попытался запустить

!dpkg-deb --extract cuda-repo-ubuntu1804-10-2-local-10.2.89-440.33.01_1.0-1_amd64.deb /usr/local

, как было предложено здесь , но я не знаю, где взять папку cuda-10.2 .

Эти команды тоже не работают:

!wget https://developer.download.nvidia.com/compute/cuda/10.2/Prod/local_installers/cuda_10.2.89_440.33.01_linux.run
!apt-get install sudo
!yes | sudo sh cuda_10.2.89_440.33.01_linux.run
0
задан 13 July 2021 в 22:09

1 ответ

Вы создаете каталог cuda-10.2 там, где вам нужно, например, /usr/local/cuda-10.2. Под ним вы можете сделать следующие каталоги (следуя системе, использовавшейся в более ранних релизах CUDA):

/usr/local/cuda-10.2/
bin/
doc/
extras/
include -> targets/x86_64-linux/include/
lib64 -> targets/x86_64-linux/lib/
libnsight/
libnvvp/
LICENSE
nsightee_plugins/
nvml/
nvvm/
README
samples/
share/
src/
targets/
tools/
version.txt

Скопируйте файл из deb's /usr/bin, lib64 и т.д. в вышеупомянутый /usr/local/cuda-10.2 bin, lib64 и т.д. Аналогично из deb's /var.

Вы можете настроить отдельный скрипт для каждой установки CUDA, чтобы изменить ваши PATH и LD_LIBRARY_PATH для выбора соответствующей CUDA. Любые специальные компиляторы, если они доступны из стандартных репозиториев, могут быть добавлены в ...cudaxxx/bin в виде ссылок. Если требуемые компиляторы даже не доступны из репозиториев, вы можете установить их исполняемые файлы из любого места в каталог ...cudaxxx/bin.

Стандартная установка CUDA выглядит так, как будто она переходит к размещению всех файлов bin и lib в системных областях, но, конечно, это делает проблематичной установку нескольких CUDA.


Подробности
Просматривая свои предыдущие установки, я вижу, что после 10.2 я перешел на использование файла .run для установки каталогов /usr/local/cuda-xxx. Сделайте cuda-xxx доступным для записи, и переопределите все места установки с системного по умолчанию на свой cuda-xxx - не нужно sudo, не нужно изменять системные файлы.

Для 10.2 я создал область staging (/usr/local/cuda102), чтобы вытащить все deb-файлы, включенные в загруженный .deb-файл. Также был создан конечный каталог с именем /usr/local/cuda-10.2. Все deb-файлы, связанные с драйвером Nvidia ("440" в их именах), я переместил в каталог с именем "hiddendebs", чтобы убрать их с дороги (или просто удалить).

Под deb's var у вас есть cuda-repo-10-2-local-10.2.89-440.33.01, содержащий все интересные debs. Я просто использовал файловый менеджер для поиска deb и сжатых tar каталогов, стараясь запускать менеджер архивов, а не программу установки (R клик для выбора). Каждый из deb будет иметь каталог data.tar.xz, который содержит множество подкаталогов, заканчивающихся на некоторые библиотеки: например, из data.tar.xz: /usr/local/cuda-10.2/targets/x86_64-linux/lib/somelib.so и т.д. Перетащите в конечный каталог /usr/local/cuda-10.2/lib64. Большинство deb-файлов будут иметь такую настройку, с исполняемыми файлами в каталоге bin cuda-10.2. Некоторые из них отличаются, например, Nsightxxx, которые имеют собственное расположение в cuda-10.2. Некоторые debs, которые я не использовал, были связаны с FORTRAN. Я только что добился того, что смог запустить демо-версию.

0
ответ дан 28 July 2021 в 11:19

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

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