Рейтинг:0

Проблемы с установкой WLS ROCm: возможно, нет устройств GPU

флаг jp

Я пытался установить ROCm, но при запуске команды рокинформация Я получаю этот результат:

libkmod: ОШИБКА ../libkmod/libkmod-module.c:1657 kmod_module_new_from_loaded: не удалось открыть /proc/modules: нет такого файла или каталога
Ошибка: не удалось получить список модулей: нет такого файла или каталога
Модуль ROCK НЕ загружен, возможно, нет устройств GPU

И при выполнении команды клинфо команда после ее установки, я получаю этот результат с 0 устройствами:

Количество платформ 1
  Название платформы AMD Accelerated Parallel Processing
  Поставщик платформы Advanced Micro Devices, Inc.
  Версия платформы OpenCL 2.2 AMD-APP (3361.0)
  Профиль платформы FULL_PROFILE
  Расширения платформы cl_khr_icd cl_amd_event_callback
  Разрешение таймера хоста платформы 100 нс
  Суффикс функции Platform Extensions AMD

  Название платформы AMD Accelerated Parallel Processing
Количество устройств 0

Поведение платформы NULL
  clGetPlatformInfo(NULL, CL_PLATFORM_NAME, ...) Ускоренная параллельная обработка AMD
  clGetDeviceIDs(NULL, CL_DEVICE_TYPE_ALL, ...) Ускоренная параллельная обработка AMD
  clCreateContext(NULL, ...) [по умолчанию] На платформе не найдено ни одного устройства
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_DEFAULT) На платформе не найдено ни одного устройства
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CPU) На платформе не найдено ни одного устройства
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_GPU) На платформе не найдено ни одного устройства
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ACCELERATOR) На платформе не найдено ни одного устройства
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_CUSTOM) На платформе не найдено ни одного устройства
  clCreateContextFromType(NULL, CL_DEVICE_TYPE_ALL) На платформе не найдено ни одного устройства

Свойства загрузчика ICD
  Имя загрузчика ICD OpenCL Загрузчик ICD
  Загрузчик ICD Поставщик OCL Бесплатное программное обеспечение Icd
  Загрузчик ICD версии 2.2.11
  Загрузчик ICD Профиль OpenCL 2.1
        ПРИМЕЧАНИЕ: ваша библиотека OpenCL поддерживает только OpenCL 2.1,
                но некоторые установленные платформы поддерживают OpenCL 2.2.
                Программы, использующие функции версии 2.2, могут аварийно завершать работу.
                или вести себя неожиданно

Я работаю на устройстве Windows с Ubuntu 18.04 LTS. Версия ядра 5.5.0. И у меня есть графика AMD Radeon Vega 8. Установка ROCm производилась следующим образом: Я скачал ядро ​​5.5.

wget kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000_5.0.0-050000.201903032031_all.deb
 
wget kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-headers-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb
 
wget kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-image-unsigned-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb
 
wget kernel.ubuntu.com/~kernel-ppa/mainline/v5.0/linux-modules-5.0.0-050000-generic_5.0.0-050000.201903032031_amd64.deb


 sudo dpkg -i linux-headers-5.0.0*.deb linux-image-unsigned-5.0.0*.deb linux-modules-5.0.0*.deb

Я перезагрузил систему, а затем загрузил и установил amdgpu-install:

$ sudo apt-получить обновление

$ wget https://repo.radeon.com/amdgpu-install/21.40/ubuntu/bionic/amdgpu-install-21.40.40500-1_all.deb

$ sudo apt-get install ./amdgpu-install-21.40.40500-1_all.deb

$ sudo apt-получить обновление

$ sudo amdgpu-install --usecase=opencl,rocm --no-dkms

Перезагрузился еще раз. И добавил себя в группу видео:

sudo usermod -a -G видео $LOGNAME

Я не получал сообщений об ошибках до запуска клинфо и рокинформация. Может кто-нибудь сказать мне, что я делаю неправильно? PD: Я пытаюсь заставить ROCm OpenCl использовать мой GPU с GROMACS.

Рейтинг:0
флаг vn

Хотя у меня нет графических процессоров AMD, с которыми я мог бы попробовать это (и я не знаю наверняка, работает ли ROCm на WSL2), я вижу несколько проблем с вашей конфигурацией.

Во-первых, вы просто говорите «устройство Windows», но не указываете версию Windows, которая очень важно как предварительное условие здесь. Для поддержки вычислений на GPU в WSL2 вам потребуется либо Windows 10, либо самый последний выпуск Windows 10 (21H2, выпущенный за последние несколько дней). Видеть этот блог разработчиков Майкрософт для получения дополнительной информации. Похоже, основное внимание уделяется CUDA, но AMD также тесно сотрудничала в этом вопросе с Microsoft.

Во-вторых, проверьте фактическую версию ядра с помощью uname -а. Я не помню, чтобы 5.5 когда-либо была версией ядра WSL2. Согласно Документы Майкрософт, поддержка GPU Compute была добавлена ​​в выпуск 4.19.121 ядра WSL2. После этого был релиз 5.4, а теперь у нас 5.10 как последнее ядро ​​WSL2.

И маловероятно, что основное ядро ​​Ubuntu вам все равно здесь поможет. Способность ядра Linux взаимодействовать с драйвером устройства Windows AMD для вычислений на графическом процессоре — это функция, специфичная (насколько мне известно) для Microsoft WSL2-форк ядра.

Наконец, стандартное ядро ​​WSL2 не поддерживает загружаемые модули. Поскольку похоже, что ROCm устанавливается как модуль, вам необходимо:

  • Создайте свой собственный из источников, указанных выше

  • Настройте WSL2 для использования вашего нового ядра, указав на него через .wslconfig.

    Видеть этот ответ на Unix и Linux Больше подробностей.

Ответить или комментировать

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