Show Your Support: This site is primarily supported by advertisements. Ads are what have allowed this site to be maintained on a daily basis for the past 18+ years. We do our best to ensure only clean, relevant ads are shown, when any nasty ads are detected, we work to remove them ASAP. If you would like to view the site without ads while still supporting our work, please consider our ad-free Phoronix Premium.
Radeon ROCm Updates Documentation Reinforcing Focus On Headless, Non-GUI Workloads
Added last week to the main README file on the ROCm repository is a notice that the AMD ROCm platform is intended as a "compute stack for headless system deployments" and not focused on GUI-based software applications. This doesn't appear to be a change in policy but just making it clear that their focus is on HPC and other headless deployments -- not necessarily on allowing you to have a nice OpenCL compute stack for the likes of Blender, Darktable, DaVinci Resolve, and other OpenCL-using GUI desktop programs.
This clear notice on the ROCm GitHub page appears to stem from complaints recently around ROCm issues in Blender OpenCL.
Meanwhile as recently as last week the ROCm support team still is not commenting on RDNA 2 support for ROCm. The Radeon Software for Linux packaged driver currently ships a ROCm-based OpenCL compute driver for Navi 2x graphics processors but is still not supported by the mainline open-source ROCm code on GitHub. Similarly, the original RDNA/Navi graphics processors are also still not supported by upstream ROCm nearly two years after the graphics cards first launched.
With ROCm they are primarily focused on CDNA and other workstation-focused graphics cards rather than the consumer GPUs, which is unfortunate if you have been hoping to use a shiny new Radeon RX 6000 (or RX 5000) series GPU for both personal and basic compute needs. We have heard for months about ROCm for RDNA being worked on albeit without any clear timeline. As of the current ROCm 4.0 release, the officially supported GPUs include GFX9/Vega and CDNA/MI100 graphics processors. There is also not-fully-supported / unofficial support for Radeon Polaris and Hawaii GPUs.
While for RDNA users there is the OpenCL driver bundled with the Radeon Software for Linux driver, that driver package remains focused on the enterprise Linux distributions like CentOS/RHEL, SUSE Linux Enterprise, and Ubuntu LTS releases. Your mileage may vary on other Linux distributions outside of those enterprise-focused releases for at least being able to get the user-space components working like the OpenCL driver.
It would be great if ROCm was a universal open-source compute platform across all Radeon hardware and with all workloads in mind, but at this time it is not. For those on AMD Radeon consumer graphics cards and after the likes of Blender OpenCL or other desktop-minded compute workloads, your best hope comes down to these projects adding Vulkan back-ends in the future, Mesa's OpenCL "Clover" support getting into better shape, and/or projects like CLVK and CLSPV maturing for production use to run OpenCL over Vulkan drivers. Seeing more software programs beginning to use Vulkan for compute would be splendid as well as OpenCL-over-Vulkan becoming viable given how mature, great, and widespread that open-source Vulkan drivers are these days on the Linux desktop without having to resort to installing extra components like ROCm, Intel Compute Runtime / IGC, or other non-default packages.