Найти в Дзене
[about@Linux ~]#

Включение OpenCL для amdgpu в Calculate Linux 23

OpenCL — фреймворк для написания компьютерных программ, связанных с параллельными вычислениями на различных графических и центральных процессорах, а также FPGA. В быту он используется, в основном, для различных вычислений на графических процессорах AMD и получения хардварного ускорения в программных пакетах по типу Blender, etc.

Данная инструкция будет актуальна для видеокарт AMD от серии RX4xx и выше, работающих под управлением Calculate Linux. Для обеспечения поддержки OpenCL будет использоваться RadeonOpenCompute/ROCm и соответствующий пакет dev-libs/rocm-opencl-runtime из репозиториев Gentoo.

Для начала подготовим систему к установке rocm-opencl-runtime установив следующую зависимость:

# emerge -av dev-util/opencl-headers

А также, чтобы не получить в процессе установки пакетов ошибку «Failed to emerge dev-libs/roct-thunk-interface», сделаем симлинк на библиотеку libgcc_s.so.1:

# ln -s /usr/lib/gcc/x86_64-pc-linux-gnu/12/libgcc_s.so.1 /lib64/libgcc_s.so.1

Далее в любом удобном текстовом редакторе, например nano, добавляем в файл /etc/portage/package.accept_keywords/custom следующие строки, чтобы разрешить установку «тильданутых» пакетов:

dev-libs/rocm-opencl-runtime ~amd64

dev-libs/rocm-comgr ~amd64

dev-util/rocm-cmake ~amd64

dev-libs/roct-thunk-interface ~amd64

dev-libs/rocr-runtime ~amd64

dev-libs/rocm-device-libs ~amd64

И после сохранения файла, выполняем непосредственно установку rocm-opencl-runtime:

# emerge -av dev-libs/rocm-opencl-runtime

После завершения установки OpenCL должен заработать. Чтобы убедиться, что все прошло успешно и готово к использованию, можно воспользоваться утилитой clinfo.

Для ее установки сначала добавляем в следующую строку в файл /etc/portage/package.accept_keywords/custom:

dev-util/clinfo ~amd64

А затем выполняем установку пакета:

# emerge -av dev-util/clinfo

После установки, выполнив команду:

$ clinfo

Вы должны получить вывод о доступных для вычислений устройствах, примерно такой же как на картинке в начале гайда.

В случае возникновения ошибок/конфликтов в процессе работы с OpenCL, возможно, необходимо будет убрать USE-флаг opencl у пакета media-libs/mesa.

Для этого в файл /etc/portage/package.use/cutom добавляем следующую строку:

media-libs/mesa -opencl

После выполняем:

# cl-update

И ожидаем окончания пересборки media-libs/mesa. На слабых ПК пересборка может занять продолжительное время!

[about@Linux ~]# - Сообщество пользователей и любителей ОС на базе ядра Linux и по-совместительству персональный блог одного из таких людей.

Страница ВК: https://vk.com/about_linux