Вопрос или проблема
Я пытаюсь установить CUDA на свою систему Ubuntu. Поэтому я выполнил следующую команду:
sudo apt install nvidia-driver-535
И nvidia-smi
показал мне, что у меня установлена правильная версия CUDA (или по крайней мере то, что я искал):
Sun Jun 30 17:42:56 2024
+---------------------------------------------------------------------------------------+
| NVIDIA-SMI 535.183.01 Driver Version: 535.183.01 CUDA Version: 12.2 |
|-----------------------------------------+----------------------+----------------------+
А затем я сделал следующее:
sudo apt update && sudo apt upgrade
sudo apt install nvidia-cuda-toolkit
Но после всего этого, когда я попытался проверить nvcc --version
, он выдал мне следующее:
nvcc: NVIDIA (R) Cuda compiler driver
Copyright (c) 2005-2021 NVIDIA Corporation
Built on Thu_Nov_18_09:45:30_PST_2021
Cuda compilation tools, release 11.5, V11.5.119
Build cuda_11.5.r11.5/compiler.30672275_0
Почему я получаю этот конфликт? Я хочу, чтобы у меня была CUDA 12.2 для nvcc. Как я могу решить эту проблему и обновить nvcc, чтобы использовать CUDA 12.2?
Возможно, вам нужно выполнить постустановочные действия, такие как обновление окружения.
export CUDA_HOME=/usr/local/cuda-12.2
export PATH=$CUDA_HOME/bin:$PATH
export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH
Затем выполните source ~/.bashrc
, вы также можете создать символическую ссылку для вашей версии 12.2 следующим образом:
sudo rm /usr/local/cuda
sudo ln -s /usr/local/cuda-12.2 /usr/local/cuda
Какую версию Ubuntu вы используете? Конфликт может быть вызван тем, что в репозитории Ubuntu находится более старая версия инструмента для вашей версии Ubuntu.
Вы можете решить этот конфликт, вручную установив правильную версию пакета. Выполните следующие шаги:
-
Удалите текущий инструментарий NVIDIA CUDA
:sudo apt remove nvidia-cuda-toolkit && sudo apt autoremove
-
Посетите страницу загрузки Nvidia CUDA toolkitи выберите
соответствующие поля. -
Наконец, выберите метод установки и следуйте
инструкциям, рекомендуется загрузить локальный файл выполнения и
выполнить его для удобства.
Ubuntu 22.04
У меня была старая (или нежелательная?) версия nvcc в /usr/bin. Поэтому мое решение было следующим:
cd /usr/bin
sudo mv nvcc nvcc_x
sudo ln -s /usr/local/cuda-12.2/bin/nvcc
Ответ или решение
Когда вы устанавливаете драйверы и инструменты CUDA на Ubuntu, частой проблемой является несоответствие версий между установленными компонентами, такими как nvcc
и nvidia-smi
. В вашем случае, вы установили драйвер NVIDIA версии 535, который поддерживает CUDA 12.2, однако nvcc
, похоже, остался на версии 11.5. Это может возникнуть из-за того, что nvcc
установлен из репозитория Ubuntu, который предлагает более старую версию пакета nvidia-cuda-toolkit
.
Причины проблемы:
- Разные источники установки:
nvidia-smi
и драйвер NVIDIA могли быть установлены из официального репозитория NVIDIA, в то время какnvcc
был установлен из стандартного репозитория Ubuntu. - Реимпорт окружения: Переменные окружения, указывающие на пути установленных версий CUDA, могут быть настроены неправильно.
- Несовпадение символических ссылок: Символическая ссылка
/usr/local/cuda
может указывать на старую версию CUDA.
Решение проблемы:
-
Проверка переменных окружения:
Убедитесь, что переменные окруженияCUDA_HOME
,PATH
иLD_LIBRARY_PATH
указывают на правильные директории CUDA 12.2:export CUDA_HOME=/usr/local/cuda-12.2 export PATH=$CUDA_HOME/bin:$PATH export LD_LIBRARY_PATH=$CUDA_HOME/lib64:$LD_LIBRARY_PATH source ~/.bashrc
-
Исправление символической ссылки:
Убедитесь, что символическая ссылка/usr/local/cuda
указывает на версию CUDA 12.2:sudo rm /usr/local/cuda sudo ln -s /usr/local/cuda-12.2 /usr/local/cuda
-
Переустановка CUDA:
Удалите старую версиюnvcc
и установите ту, которая соответствует CUDA 12.2:sudo apt remove nvidia-cuda-toolkit && sudo apt autoremove
Затем загрузите и установите соответствующую версию с сайта NVIDIA, используя локальный файл:
- Зайдите на страницу загрузки CUDA 12.2.
- Следуйте инструкциям для установки с локального файла.
-
Корректировка пути для
nvcc
:
Если старый файлnvcc
всё ещё находится в другом месте, уберите его и создайте символическую ссылку на правильный:cd /usr/bin sudo mv nvcc nvcc_old sudo ln -s /usr/local/cuda-12.2/bin/nvcc
Эти шаги помогут решить проблему несоответствия версий и обеспечить правильную работу инструментов CUDA на вашем Ubuntu. Внимательно следуйте инструкциям, чтобы избежать побочных проблем при установке или изменении системных настроек.