Привет! Решил закинуть это письмо в hardware@ поскольку с декабря успели произойти некоторые изменения: - У AMD почти появился ROCm в ядре, т.е. для нового железа (Vega и выше) OpenCL заработает "из коробки". Также не забываем читать внимательно страницу проекта про аппаратные требования, поскольку ROCm/KFD зависит не только от GPU, но и от CPU и возможностей материнской платы. - В недавних дровах amdgpu-pro-19.10 стало можно пользоваться закрытой реализацией на базе GPU специфичной библиотеки под названием orca: [root@lks ~]# clinfo Number of platforms 1 Platform Name AMD Accelerated Parallel Processing Platform Vendor Advanced Micro Devices, Inc. Platform Version OpenCL 2.1 AMD-APP (2841.4) Platform Profile FULL_PROFILE Platform Extensions cl_khr_icd cl_amd_event_callback cl_amd_offline_devices Platform Host timer resolution 1ns Platform Extensions function suffix AMD ... $ ll /usr/lib64/libamdocl* -rw-r--r-- 1 root root 36408112 May 9 22:30 /usr/lib64/libamdocl12cl64.so -rw-r--r-- 1 root root 66351872 May 9 22:29 /usr/lib64/libamdocl-orca64.so $ cat /etc/OpenCL/vendors/amdocl-orca64.icd libamdocl-orca64.so технически это можно даже запакетить в p8/c8, но не в сизиф. Я прогнал несколько тестов чтобы убедиться, что opencl рабочий и сравнить его производительность с NATIVE c++ сборкой: <AMD GPU R9 Nano / FIJI> $ ./luxmark --scene=HOTEL --mode=BENCHMARK_OCL_GPU --single-run --ext-info Score: 3313 Scene validation: Ok Image validation: Ok <NVIDIA GTX-1050> ./luxmark --scene=HOTEL --mode=BENCHMARK_OCL_CPUGPU --single-run --ext-info Score: 1328 Scene validation: Ok Image validation: Ok <CPU NATIVE> $ ./luxmark --scene=HOTEL --mode=BENCHMARK_NATIVE --single-run --ext-info Score: 348 Scene validation: Ok Image validation: Ok ----- Forwarded message from Konstantin Lepikhov <lakostis@> ----- Date: Wed, 19 Dec 2018 02:02:09 +0100 From: Konstantin Lepikhov <lakostis@> To: Konstantin Lepikhov <lakostis@> Cc: legion@, ldv@, glebfm@, shrek@ Subject: Re: Q: OpenCL support in ALTLinux User-Agent: Mutt/1.10.1 (2018-07-13) On 12/06/2018, at 10:50:29 PM you wrote: <skip> > Если взять вендоров A и N то у первого есть свое решение под названием > ROCm, а у второго есть libnvidia-opencl. > > Описание ROCm > https://www.phoronix.com/scan.php?page=news_item&px=ROCm-Compute-Stack-Overview > Как видно, тут свой llvm и либы, не привязанные к mesa. + Свой тулчейн в > виде HIP и HCC. > ... > 4) ROCm тулчейн > https://github.com/RadeonOpenCompute > Я попробовал по-быстрому завести ROCm на своей Fury X где он заявлен как поддерживается и работает. Это не работает никак в ALTLinux: - OpenCL client требует поддержки KFD, которая сломана в ванильном ядре и drm-next и поддерживается в своем окружении - https://github.com/RadeonOpenCompute/ROCK-Kernel-Driver где сихронизировано только до 4.18.x. В 4.19 сборка не работает и изменений очень много (я честно пробовал накатить патчи из -next и самого ядра). - HSA библиотека ставится из бинарников для RHEL 7[1], но опять же пользоваться ей без ядерного драйвера нелья. Т.е. OpenCL сейчас можно пользоваться только для nvidia, все остальное собирать можно только в рамках какого-то решения, привязанного к RHEL/LTS Ubuntu (для которых есть сборки и поддержка со стороны AMD). И уж тем более нет смысла собирать самостоятельно все эти тулчейны на базе LLVM, поскольку они растут из master бранча проекта LLVM и никакой поддержки сторонних дистрибутивов там нет. Надеюсь, кому-то это сэкономит время. 1. http://repo.radeon.com/rocm/yum/rpm/ -- WBR et al. ----- End forwarded message ----- -- WBR et al.