From Fedora Project Wiki
(Update rocm-opencl information)
Line 41: Line 41:
| opencl-icd-loader || || || rocm-ocl-icd || https://github.com/KhronosGroup/OpenCL-ICD-Loader || Fedora already has {{ package|ocl-icd|ocl-icd}}, but the khronos version is required for GL-CL interop support ||
| opencl-icd-loader || || || rocm-ocl-icd || https://github.com/KhronosGroup/OpenCL-ICD-Loader || Fedora already has {{ package|ocl-icd|ocl-icd}}, but the khronos version is required for GL-CL interop support ||
|-
|-
| rocm-opencl-runtime || '''In Review''' || || rocm-opencl || https://github.com/radeonopencompute/rocm-opencl-runtime || https://bugzilla.redhat.com/show_bug.cgi?id=2090823 ||
| rocm-opencl-runtime || '''In Testing (F36/EL8/EL9)''' || || rocm-opencl || https://github.com/radeonopencompute/rocm-opencl-runtime || F36: https://bodhi.fedoraproject.org/updates/FEDORA-2022-2cee071a16 ||
|-
|-
| rocm_smi_lib || '''See notes''' || || rocm-smi-lib || https://github.com/radeonopencompute/rocm_smi_lib || The deprecated {{ package|rocm-smi|rocm-smi}} should be replaced by this
| rocm_smi_lib || '''See notes''' || || rocm-smi-lib || https://github.com/radeonopencompute/rocm_smi_lib || The deprecated {{ package|rocm-smi|rocm-smi}} should be replaced by this
Line 89: Line 89:
     sudo usermod -a -G vendor myusername
     sudo usermod -a -G vendor myusername


To check for rocm support of the running HW, install and run rocminfo:
To check for rocm support of the running HW, you can install and run rocminfo:


     sudo dnf install rocminfo
     sudo dnf install rocminfo
     rocminfo
     rocminfo


'''TODO''': Update once rocm-opencl or rocm-hip is added into Fedora/EPEL
=== OpenCL ===
 
ROCm OpenCL can be installed with (Fedora 36, EPEL8, and EPEL9 are currently in testing):
 
    sudo dnf install rocm-opencl
 
As well, `rocm-clinfo` or `clinfo` can be installed to verify it is working, e.g.:
 
    sudo dnf install rocm-clinfo
    rocm-clinfo


[[Category:SIGs]]
[[Category:SIGs]]
[[Category:Language-specific SIGs]]
[[Category:Language-specific SIGs]]
[[Category:Fedora special-interest groups]]
[[Category:Fedora special-interest groups]]

Revision as of 13:25, 6 July 2022

Heterogeneous Computing Special Interest Group

Mission

To encourage the packaging and accessibility of heterogeneous computing projects in Fedora and EPEL. This includes machine learning, OpenCL, and scientific computing.

Members/Packagers/Reviewers

Please add your name above if you want to help.

Tasks

  • Package and make HC related projects more accessible to users (such as OpenCL, AMD's ROCm HIP, Intel oneAPI, SYCL, Vulkan, OpenGL, etc.)
  • Document installation, packages, and general use cases
  • Translation of wiki pages and documentation (if applicable)

AMD's ROCm (OpenCL/HIP)

Warning.png
Upstream only officially supports x86_64, but they are open to pcc64le and arm64 patches

Package status

Below is a list of ROCm packages with their status. If something isn't packaged in Fedora or EPEL, feel free to take it!

This reference might be helpful for those attempting to package: https://gist.github.com/cgmb/edb7b790ab55681fb2ba5385ee02489b

Name Fedora Package EPEL? Upstream package name Upstream URL Notes
roct-thunk-interface Package-x-generic-16.pnghsakmt Yes hsakmt-roct https://github.com/radeonopencompute/roct-thunk-interface
rocr-runtime Package-x-generic-16.pngrocm-runtime Yes hsa-rocr https://github.com/radeonopencompute/rocr-runtime
rocminfo Package-x-generic-16.pngrocminfo Yes rocminfo https://github.com/radeonopencompute/rocminfo
rocm-compilersupport Package-x-generic-16.pngrocm-compilersupport Yes comgr https://github.com/radeonopencompute/rocm-compilersupport
rocm-device-libs Package-x-generic-16.pngrocm-device-libs Yes rocm-device-libs https://github.com/radeonopencompute/rocm-device-libs
opencl-icd-loader rocm-ocl-icd https://github.com/KhronosGroup/OpenCL-ICD-Loader Fedora already has Package-x-generic-16.pngocl-icd, but the khronos version is required for GL-CL interop support
rocm-opencl-runtime In Testing (F36/EL8/EL9) rocm-opencl https://github.com/radeonopencompute/rocm-opencl-runtime F36: https://bodhi.fedoraproject.org/updates/FEDORA-2022-2cee071a16
rocm_smi_lib See notes rocm-smi-lib https://github.com/radeonopencompute/rocm_smi_lib The deprecated Package-x-generic-16.pngrocm-smi should be replaced by this
hip hip-[runtime,devel,docs,samples] https://github.com/rocm-developer-tools/HIP Upstream doesn't cleanly separate the cmake logic with hipamd, we should send upstream patches
hipamd rocm-hip-runtime https://github.com/rocm-developer-tools/hipamd Upstream wants to merge this with OpenCL's sources, so it might be worth waiting to package, or adding as a subpackage for rocm-opencl. Testing version in mystro256's COPR: https://copr.fedorainfracloud.org/coprs/mystro256/rocm-hip/ using rocm-hip to avoid amd branding in Fedora package name.
rocm-cmake rocm-cmake https://github.com/radeonopencompute/rocm-cmake Needed by most of the roc* and hip* packages below
hipblas hipblas https://github.com/rocmsoftwareplatform/hipblas
hipsparse hipsparse https://github.com/rocmsoftwareplatform/hipsparse
rocalution rocalutio https://github.com/rocmsoftwareplatform/rocalution
rocblas rocblas https://github.com/rocmsoftwareplatform/rocblas
rocfft rocfft https://github.com/rocmsoftwareplatform/rocfft
rocmvalidationsuite rocm-validation-suite https://github.com/rocm-developer-tools/rocmvalidationsuite
rocprim rocprim https://github.com/rocmsoftwareplatform/rocprim
rocrand rocrand https://github.com/rocmsoftwareplatform/rocrand
rocsolver rocsolver https://github.com/rocmsoftwareplatform/rocsolver
rocsparse rocsparse https://github.com/rocmsoftwareplatform/rocsparse
tensile ? https://github.com/rocmsoftwareplatform/tensile
rocdbgapi rocm-dbgapi https://github.com/rocm-developer-tools/rocdbgapi
rocgdb rocm-gdb https://github.com/rocm-developer-tools/rocgdb A fork of Package-x-generic-16.pnggdb with ROCm related addons
rocprofiler rocprofiler https://github.com/rocm-developer-tools/rocprofiler
roctracer roctracer https://github.com/rocm-developer-tools/roctracer

Installation

Setup

For non-root usage, the user must be added to the vendor group:

   sudo usermod -a -G vendor myusername

To check for rocm support of the running HW, you can install and run rocminfo:

   sudo dnf install rocminfo
   rocminfo

OpenCL

ROCm OpenCL can be installed with (Fedora 36, EPEL8, and EPEL9 are currently in testing):

   sudo dnf install rocm-opencl

As well, rocm-clinfo or clinfo can be installed to verify it is working, e.g.:

   sudo dnf install rocm-clinfo
   rocm-clinfo