Несоответствие версий между nvcc 11.5 и nvidia-smi 12.2 на Ubuntu.

Вопрос или проблема

Я пытаюсь установить 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.

Причины проблемы:

  1. Разные источники установки: nvidia-smi и драйвер NVIDIA могли быть установлены из официального репозитория NVIDIA, в то время как nvcc был установлен из стандартного репозитория Ubuntu.
  2. Реимпорт окружения: Переменные окружения, указывающие на пути установленных версий CUDA, могут быть настроены неправильно.
  3. Несовпадение символических ссылок: Символическая ссылка /usr/local/cuda может указывать на старую версию CUDA.

Решение проблемы:

  1. Проверка переменных окружения:
    Убедитесь, что переменные окружения 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
  2. Исправление символической ссылки:
    Убедитесь, что символическая ссылка /usr/local/cuda указывает на версию CUDA 12.2:

    sudo rm /usr/local/cuda
    sudo ln -s /usr/local/cuda-12.2 /usr/local/cuda
  3. Переустановка CUDA:
    Удалите старую версию nvcc и установите ту, которая соответствует CUDA 12.2:

    sudo apt remove nvidia-cuda-toolkit && sudo apt autoremove

    Затем загрузите и установите соответствующую версию с сайта NVIDIA, используя локальный файл:

  4. Корректировка пути для nvcc:
    Если старый файл nvcc всё ещё находится в другом месте, уберите его и создайте символическую ссылку на правильный:

    cd /usr/bin
    sudo mv nvcc nvcc_old
    sudo ln -s /usr/local/cuda-12.2/bin/nvcc

Эти шаги помогут решить проблему несоответствия версий и обеспечить правильную работу инструментов CUDA на вашем Ubuntu. Внимательно следуйте инструкциям, чтобы избежать побочных проблем при установке или изменении системных настроек.

Оцените материал
Добавить комментарий

Капча загружается...