Поделиться через


Установка драйверов GPU AMD на виртуальных машинах Linux NVv5_V710 Azure

Область применения: ✔️ виртуальные машины Linux

1. Руководство по установке

Введение 1.1

В этом документе описаны шаги по установке драйвера AMD для Linux для использования возможностей GPU AMD Radeon™ PRO V710 на экземпляре GPU NVv5-V710 Linux, предоставляемом Microsoft Azure. В последующих разделах приведены подробные инструкции по установке драйвера Linux для пользователей, желающих выполнить вывод с помощью ROCm на экземпляре GPU Linux NVv5-V710.

2. Установка драйвера Linux

2.1 Поддерживаемые дистрибутивы Linux

Убедитесь, что в системе есть поддерживаемая версия Linux. Чтобы получить сведения о дистрибутиве Linux, используйте следующую команду:

$ cat /etc/*release

Выходные данные аналогичны следующему примеру

DISTRIB_ID=Ubuntu 
DISTRIB_RELEASE=XX 
DISTRIB_CODENAME=jammy 
DISTRIB_DESCRIPTION="Ubuntu" 
PRETTY_NAME="Ubuntu LTS"

Убедитесь, что ваш дистрибутив Linux соответствует поддерживаемому дистрибутиву.

2.2 Поддерживаемое ядро Linux

Чтобы проверить версию ядра системы Linux, используйте следующую команду:

$ uname -srmv

Выходные данные аналогичны следующему примеру

Linux 5.XX.0-XX-generic #86-Ubuntu SMP Mon Jul 10 16:07:21 UTC 2023 x86_64

Убедитесь, что версия ядра соответствует поддерживаемым операционным системам.

3. Предварительные требования

3.1. Настройка разрешений для групп

Добавьте себя в группу отрисовки и видео с помощью следующей команды:

$ sudo usermod -a -G render,video $LOGNAME

3.2 Заголовки ядра и пакеты разработки

Пакет драйверов использует поддержку динамического модуля ядра (DKMS) для сборки модуля amdgpu-dkms для установленных ядер. Для этого требуется установка заголовков и модулей ядра Linux для каждого ядра. Они устанавливаются автоматически с ядром. Однако если вы используете несколько версий ядра или скачиваете образы ядра без метапакетов, их может потребоваться установить вручную.

$ sudo apt install "linux-headers-$(uname -r)" "linux-modules-extra-$(uname -r)"

3.3 Проверка карточки GPU в Linux®

Выходные данные должны быть картой GPU.

$ sudo lspci -d 1002:7461
c3:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Device 7461

Примечание.

7461 — это идентификатор виртуального устройства-функции. Это подтверждает, что виртуальная машина настроена с GPU AMD Pro™ V710.

Обновление виртуальной машины 3.4

На экземпляре GPU NVv5-V710 под управлением ОС Ubuntu 22.04 выполните обновление.

$ sudo apt update

3.5 Исключите драйвер GPU AMD

Чтобы установить последний драйвер AMD Linux, важно исключить драйвер AMD GPU по умолчанию, найденный в дистрибутивах ОС Linux, таких как Ubuntu или RHEL. Драйвер AMD GPU по умолчанию в дистрибутивах ОС Linux не сертифицирован для использования с GPU AMD Radeon™ PRO V710 на экземпляре NVv5-V710 GPU Linux. Этот драйвер Linux, с другой стороны, специально оптимизирован для нагрузок GPU Linux для Azure NVv5-V710. Выполните следующие действия, чтобы исключить драйвер:

Откройте/etc/modprobe.d/exclude.conf-файл и добавьте следующую строку:

exclude amdgpu

После обновления файла exclude.conf, как описано выше, выполните следующую команду, чтобы изменения вступили в силу после перезагрузки:

$ sudo update-initramfs -uk all

3.6 Перезагрузка

После перезапуска виртуальной машины драйвер AMD GPU по умолчанию в дистрибутивах Ubuntu Linux не загружается, так как мы исключили его. Чтобы убедиться, что драйвер не загружен, выполните команду "lsmod | grep amdgpu", чтобы проверить, загружен ли драйвер amdgpu. Если выходных данных нет, драйвер не загружен и вы можете продолжить. Однако если драйвер остался загруженным, вернитесь к предыдущему шагу, чтобы дважды проверить, что драйвер amdgpu был исключен правильно.

4. Установка драйвера AMD

Установка 4.1

На следующих шагах показано использование скрипта amdgpu-install для установки драйвера одной версии. Чтобы установить последний драйвер rocm, выполните следующие команды в терминале:

# URL to the directory listing 
BASE_URL="https://repo.radeon.com/amdgpu-install/latest/ubuntu/jammy/" 

# Fetch the directory listing and find the latest .deb file 
LATEST_DEB=$(wget -qO- $BASE_URL | grep -oP 'amdgpu-install_\d+\.\d+\.\d+-\d+_all\.deb' | head -n 1) 

# Download the latest .deb file 
wget "${BASE_URL}${LATEST_DEB}"

# install the driver installer 
sudo apt install ./${LATEST_DEB}

#install the driver 
sudo amdgpu-install --usecase=rocm

Примечание.

При необходимости это можно использовать для создания скрипта для автоматизации процесса установки.

4.2 Загрузка драйвера GPU AMD

$ sudo modprobe amdgpu

Примечание.

Драйвер GPU AMD необходимо загружать при каждом запуске.

Просмотрите выходные данные "dmesg | grep amdgpu" , чтобы убедиться, что драйвер GPU загружен и инициализирован успешно.

$ sudo dmesg | grep amdgpu 
[ 66.177373] [drm] amdgpu kernel modesetting enabled. 
[ 66.177379] [drm] amdgpu version: 6.7.0 
[ 66.177623] amdgpu: Virtual CRAT table created for CPU 
[ 66.177653] amdgpu: Topology: Add CPU node 
[ 66.184259] amdgpu 045b:00:00.0: enabling device (0000 -> 0002) 
[ 66.670226] [drm] add ip block number 5 <amdgpu_vkms> 
[ 66.685726] amdgpu 045b:00:00.0: amdgpu: Fetched VBIOS from VRAM BAR 
[ 66.685733] amdgpu: ATOM BIOS: 113-D7190300-104 
[ 66.689542] amdgpu 045b:00:00.0: amdgpu: CP RS64 enable

4.2.1 Выполните AMD-SMI, чтобы убедиться, что драйвер загружен успешно

$ amd-smi monitor
GPU  POWER  GPU_TEMP  MEM_TEMP  GFX_UTIL  GFX_CLOCK  MEM_UTIL  MEM_CLOCK  ENC_UTIL  ENC_CLOCK  DEC_UTIL  DEC_CLOCK     THROTTLE  SINGLE_ECC  DOUBLE_ECC  PCIE_REPLAY  VRAM_USED  VRAM_TOTAL   PCIE_BW 

  0   11 W     43 °C     58 °C      84 %   1814 MHz       1 %     96 MHz       N/A    812 MHz       N/A    512 MHz  UNTHROTTLED           0           0            0     227 MB    25476 MB  N/A Mb/s