============================================ Installing Data Center GPU: Rolling Releases ============================================ This document describes software installation for Intel® Data Center GPU Max Series and Intel® Data Center GPU Flex Series. For readability purposes, Intel® Data Center GPU Max Series might be referred to as Max, while Intel® Data Center GPU Flex Series might be referred to as Flex. Linux\* operating system distribution support varies by hardware family. The following table indicates which release streams are supported and validated for each hardware family and operating system combination. Other combinations may work, however, they have not explicitly tested. Issues reported against non-supported combination are subject to Intel's evaluation prior to fixing in the corresponding release stream. .. list-table:: :header-rows: 1 * - GPU series - Ubuntu Server - Red Hat Enterprise Linux - SUSE Linux Enterprise Server * - Max - LTS, Production, Rolling - LTS, Production, Rolling - LTS, Production, Rolling * - Flex - LTS, Production, Rolling - LTS, Production, Rolling - N/A We recommend installing the LTS version for most users. For more information about release streams, see :doc:`Releases <../releases/index>`. Installing GPU drivers ====================== .. tab-set:: :sync-group: platform .. tab-item:: RHEL :sync: rhel This procedure describes the installation of the unified driver release for Intel® Data Center GPU Flex Series and Intel® Data Center GPU Max Series on Red Hat Enterprise Linux (RHEL). **Prerequisites**: * Make sure you use one of the supported RHEL versions: 8.10, 9.4, 9.5, or 9.6. * To install the kernel modules provided, your system needs to support the Dynamic Kernel Module System (DKMS), which is not provided by the official RHEL package repositories. You can install DKMS onto your system through the `Extra Packages for Enterprise Linux `_ (EPEL) project. If DKMS is not available, the installation fails with a package dependency not being met for DKMS. This procedure demonstrates one method for DKMS installation, but you can choose any of the methods described in the EPEL documentation to suit your system setup. .. note:: Intel strives to continuously improve the products' security. To ensure the continued security of the package repositories documented on this site, the GPG keys used to sign packages and repository metadata are updated on a recurring basis. In order for updates to continue to function, you have to update your local system with the GPG public key published by Intel at https://repositories.intel.com/gpu/intel-graphics.key. .. code-block:: bash sudo rpm --import https://repositories.intel.com/gpu/intel-graphics.key **Installation procedure**: #. Add the online network package repository. .. code-block:: bash . /etc/os-release if [[ ! " 8.10 9.4 9.5 9.6 " =~ " ${VERSION_ID} " ]]; then echo "RHEL version ${VERSION_ID} not supported" else echo "Installing online network repository for ${VERSION_ID}" sudo dnf install -y 'dnf-command(config-manager)' sudo dnf config-manager --add-repo \ https://repositories.intel.com/gpu/rhel/${VERSION_ID}/unified/intel-gpu-${VERSION_ID}.repo fi Optionally, instead of using the online network package repository, you can download and use the offline repository using the following code. This extracts and enables the Intel® Data Center GPU Flex Series and Intel® Data Center GPU Max Series repository in your operating system's repository management configuration. Apart from enabling the repository, the offline installer does not make any other changes to the operating system's configuration. .. code-block:: bash . /etc/os-release if [[ ! " 8.10 9.4 9.5 9.6 " =~ " ${VERSION_ID} " ]]; then echo "RHEL version ${VERSION_ID} not supported" else wget https://repositories.intel.com/gpu/rhel/${VERSION_ID}/intel-gpu-rhel-${VERSION_ID}.run chmod +x intel-gpu-rhel-${VERSION_ID}.run sudo ./intel-gpu-rhel-${VERSION_ID}.run fi In some Intel software releases, the offline installer may include prebuilt kernel module packages (KMD prebuilds). To check if your specific release includes these prebuilt packages, refer to the documentation provided with the offline installer. You can access this documentation by running the offline installer with the -s parameter. If you decide to install GPU drivers using the KMD prebuilds, refer to the offline installer documentation for detailed instructions, as this document does not cover that topic. To configure Secure Boot when using KMD prebuilds, follow the instructions in the :doc:`Configuring Secure Boot <./configuring-secure-boot>` guide. #. Add the EPEL repository required for DKMS. .. code-block:: bash . /etc/os-release sudo dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-${VERSION_ID%.*}.noarch.rpm sudo dnf config-manager --disable epel By default, EPEL is disabled after installation due to conflicts with Intel's packages. It will be temporarily enabled for the following command to install DKMS. #. Install kernel and Intel® XPU System Management Interface (XPU-SMI) packages on a bare metal system. Installation on the host is sufficient for hardware management and support of the runtimes in containers and bare metal. .. code-block:: bash sudo dnf install -y kernel-headers flex bison sudo dnf install --enablerepo epel -y intel-fw-gpu intel-i915-dkms xpu-smi sudo reboot .. note:: There are known limitations associated with the installation of the intel-i915-dkms package. You may encounter a warning about an unknown symbol during the installation process. Please be aware that this is a known issue and does not affect the functionality of the software. #. Install packages responsible for computing and media runtimes. .. code-block:: bash sudo dnf install -y \ intel-opencl intel-media libmfxgen1 libvpl2 \ level-zero intel-level-zero-gpu mesa-dri-drivers mesa-vulkan-drivers \ mesa-vdpau-drivers libdrm mesa-libEGL mesa-libgbm mesa-libGL \ mesa-libxatracker libvpl-tools intel-metrics-discovery \ intel-metrics-library intel-igc-core intel-igc-cm \ libva libva-utils intel-gmmlib libmetee intel-gsc intel-ocloc #. Install development packages. .. code-block:: bash sudo dnf install -y --refresh \ intel-igc-opencl-devel level-zero-devel intel-gsc-devel libmetee-devel #. Install verification tools. .. code-block:: bash sudo dnf install --enablerepo epel -y hwinfo clinfo #. List the group assigned ownership of the render nodes and the groups you are a member of. There are specific groups that users must be a part of to access certain functionalities of the GPU. The **render** group specifically allows access to GPU resources for rendering tasks without giving full access to display management or other potentially more sensitive operations. .. code-block:: bash stat -c "%G" /dev/dri/render* groups ${USER} #. If you are not a member of the same group used by the DRM render nodes, add your user to the render node group. .. code-block:: bash sudo gpasswd -a ${USER} render #. Change the group ID of the current shell. .. code-block:: bash newgrp render .. tab-item:: SLES :sync: sles This procedure describes the installation of the unified driver release for Intel® Data Center GPU Max Series on the SUSE Linux Enterprise Server (SLES). Intel® Data Center GPU Flex Series is not supported on SLES. **Prerequisites**: Make sure you use one of the supported SLES versions, either 15 SP4, 15 SP5, or 15 SP6. .. note:: Intel strives to continuously improve the products' security. To ensure the continued security of the package repositories documented on this site, the GPG keys used to sign packages and repository metadata are updated on a recurring basis. In order for updates to continue to function, you have to update your local system with the GPG public key published by Intel at https://repositories.intel.com/gpu/intel-graphics.key. .. code-block:: bash sudo rpm --import https://repositories.intel.com/gpu/intel-graphics.key **Installation procedure**: #. Add the online network package repository. .. code-block:: bash . /etc/os-release VERSION_SP=${VERSION_ID//./sp} if [[ ! " 15sp4 15sp5 15sp6 " =~ " ${VERSION_SP} " ]]; then echo "SLES version ${VERSION_ID} not supported" else sudo zypper addrepo -f -r \ https://repositories.intel.com/gpu/sles/${VERSION_SP}/unified/intel-gpu-${VERSION_SP}.repo sudo rpm --import https://repositories.intel.com/gpu/intel-graphics.key fi Optionally, instead of using the online network package repository, you can download and use the offline repository using the following code. This extracts and enables the Intel® Data Center GPU Max Series repository in your operating system's repository management configuration. Apart from enabling the repository, the offline installer does not make any other changes to the operating system's configuration. .. code-block:: bash . /etc/os-release VERSION_SP=${VERSION_ID//./sp} if [[ ! " 15sp4 15sp5 15sp6 " =~ " ${VERSION_SP} " ]]; then echo "SLES version ${VERSION_ID} not supported" else wget https://repositories.intel.com/gpu/sles/${VERSION_SP}/intel-gpu-sles-${VERSION_SP}.run chmod +x intel-gpu-sles-${VERSION_SP}.run sudo ./intel-gpu-sles-${VERSION_SP}.run fi #. Ensure the following modules and extensions are enabled in your SUSE subscription in order for all required packages to be available: * Basesystem Module * Development Tools Module * Product-WE * Package-HUB .. raw:: html
Once your system has the required modules and extensions enabled, you can continue with installing the GPU packages. For information on configuring extensions and modules, refer to the `SUSE Modules `_ article. #. Install kernel and Intel® XPU System Management Interface (XPU-SMI) packages on a bare metal system. Installation on the host is sufficient for hardware management and support of the runtimes in containers and bare metal. .. note:: If you are not running the latest kernel from SUSE, ensure your system has the kernel devel package for your kernel. To verify that the package is installed, you can run ``zypper install --oldpackage kernel-default-devel-$(uname -r)``. .. code-block:: bash sudo zypper install -y lsb-release linux-kernel-headers flex bison intel-fw-gpu intel-i915-dkms xpu-smi #. If you install a kernel module that has not been supplied by SUSE, for example, the module that is built when installing the ``intel-i915-dkms`` package, set the system configuration ``allow_unsupported_modules`` to ``1``. Failure to enable that option will prevent the kernel from loading the intel-i915-dkms generated kernel module. .. code-block:: bash # Copy the default into /etc sudo cp /lib/modprobe.d/10-unsupported-modules.conf /etc/modprobe.d/10-unsupported-modules.conf # Modify the default to set allow_unsupported_modules to 1 sudo sed -i -E 's,allow_unsupported_modules 0,allow_unsupported_modules 1,g' \ /etc/modprobe.d/10-unsupported-modules.conf If you will be booting your system from an initrd and have dracut configured, make sure to rerun dracut after changing the system configuration parameter: .. code-block:: bash # Update the initrd sudo dracut -f For additional details related to the ``allow_unsupported_modules`` option, see `SUSE's working with unsupported modules `_. #. Reboot the system to load the new module. .. code-block:: bash sudo reboot #. Install packages responsible for computing and media runtimes. .. code-block:: bash sudo zypper install -y \ intel-level-zero-gpu level-zero intel-gsc intel-opencl intel-ocloc \ intel-media-driver libigfxcmrt7 libvpl2 libvpl-tools libmfxgen1 #. Install development packages. .. code-block:: bash sudo zypper install -y \ libigdfcl-devel intel-igc-cm libigfxcmrt-devel level-zero-devel #. Install verification tools. .. code-block:: bash sudo zypper install -y clinfo libOpenCL1 libva-utils hwinfo #. List the group assigned ownership of the render nodes and the groups you are a member of. There are specific groups that users must be a part of to access certain functionalities of the GPU. The **render** group specifically allows access to GPU resources for rendering tasks without giving full access to display management or other potentially more sensitive operations. .. code-block:: bash stat -c "%G" /dev/dri/render* groups ${USER} #. If you are not a member of the same group used by the DRM render nodes, add your user to the render node group. .. code-block:: bash sudo gpasswd -a ${USER} render #. Change the group ID of the current shell. .. code-block:: bash newgrp render .. tab-item:: Ubuntu :sync: ubuntu This procedure describes the installation of the unified driver release for Intel® Data Center GPU Flex Series and Intel® Data Center GPU Max Series on Ubuntu Server. **Prerequisites**: Make sure you use either Ubuntu Server 22.04.1 (5.15 LTS kernel) or Ubuntu Server 24.04. .. note:: Intel strives to continuously improve the products' security. To ensure the continued security of the package repositories documented on this site, the GPG keys used to sign packages and repository metadata are updated on a recurring basis. In order for updates to continue to function, you have to update your local system with the GPG public key published by Intel at https://repositories.intel.com/gpu/intel-graphics.key. .. code-block:: bash wget -qO - https://repositories.intel.com/gpu/intel-graphics.key | sudo gpg --yes --dearmor --output /usr/share/keyrings/intel-graphics.gpg **Installation procedure**: #. Make sure prerequisites to add repository access are available. .. code-block:: bash sudo apt update sudo apt install -y gpg-agent wget #. Add the online network package repository. .. code-block:: bash . /etc/os-release if [[ ! " jammy noble " =~ " ${VERSION_CODENAME} " ]]; then echo "Ubuntu version ${VERSION_CODENAME} not supported" else wget -qO - https://repositories.intel.com/gpu/intel-graphics.key | \ sudo gpg --yes --dearmor --output /usr/share/keyrings/intel-graphics.gpg echo "deb [arch=amd64 signed-by=/usr/share/keyrings/intel-graphics.gpg] https://repositories.intel.com/gpu/ubuntu ${VERSION_CODENAME} unified" | \ sudo tee /etc/apt/sources.list.d/intel-gpu-${VERSION_CODENAME}.list sudo apt update fi Optionally, instead of using the online network package repository, you can download and use the offline repository using the following code. This extracts and enables the Intel® Data Center GPU Flex Series and Intel® Data Center GPU Max Series repository in your operating system's repository management configuration. Apart from enabling the repository, the offline installer does not make any other changes to the operating system's configuration. .. code-block:: bash . /etc/os-release if [[ ! " jammy noble " =~ " ${VERSION_CODENAME} " ]]; then echo "Ubuntu version ${VERSION_CODENAME} not supported" else wget https://repositories.intel.com/gpu/ubuntu/dists/${VERSION_CODENAME}/intel-gpu-ubuntu-${VERSION_CODENAME}.run chmod +x intel-gpu-ubuntu-${VERSION_CODENAME}.run sudo ./intel-gpu-ubuntu-${VERSION_CODENAME}.run fi #. Install kernel and Intel® XPU System Management Interface (XPU-SMI) packages on a bare metal system. Installation on the host is sufficient for hardware management and support of the runtimes in containers and bare metal. .. code-block:: bash sudo apt install -y \ linux-headers-$(uname -r) \ linux-modules-extra-$(uname -r) \ flex bison \ intel-fw-gpu intel-i915-dkms xpu-smi sudo reboot #. Install packages responsible for computing and media runtimes. The required packages differ between Ubuntu 22.04 and 24.04. Select the appropriate tab below for your version. .. tab-set:: .. tab-item:: Ubuntu 22.04 .. code-block:: bash sudo apt install -y \ intel-opencl-icd libze-intel-gpu1 libze1 \ intel-media-va-driver-non-free libmfx-gen1 libvpl2 \ libegl-mesa0 libegl1-mesa libegl1-mesa-dev libgbm1 libgl1-mesa-dev libgl1-mesa-dri \ libglapi-mesa libglx-mesa0 libigdgmm12 libxatracker2 mesa-va-drivers \ mesa-vdpau-drivers mesa-vulkan-drivers va-driver-all vainfo hwinfo clinfo intel-ocloc .. tab-item:: Ubuntu 24.04 .. code-block:: bash sudo apt install -y \ intel-opencl-icd libze-intel-gpu1 libze1 \ intel-media-va-driver-non-free libmfx-gen1 libvpl2 \ libegl-mesa0 libegl1-mesa-dev libgbm1 libgl1-mesa-dev libgl1-mesa-dri \ libglapi-mesa libgles2-mesa-dev libglx-mesa0 libigdgmm12 libxatracker2 mesa-va-drivers \ mesa-vdpau-drivers mesa-vulkan-drivers va-driver-all vainfo hwinfo clinfo #. Install development packages. .. code-block:: bash sudo apt install -y \ libigc-dev intel-igc-cm libigdfcl-dev libigfxcmrt-dev libze-dev #. List the group assigned ownership of the render nodes and the groups you are a member of. There are specific groups that users must be a part of to access certain functionalities of the GPU. The **render** group specifically allows access to GPU resources for rendering tasks without giving full access to display management or other potentially more sensitive operations. .. code-block:: bash stat -c "%G" /dev/dri/render* groups ${USER} #. If you are not a member of the same group used by the DRM render nodes, add your user to the render node group. .. code-block:: bash sudo gpasswd -a ${USER} render #. Change the group ID of the current shell. .. code-block:: bash newgrp render Installing the oneAPI toolkit ============================= The oneAPI toolkit is a unified programming model designed to simplify development across computing architectures. It includes tools and libraries optimized for Intel hardware, allowing for efficient utilization of Intel GPUs. To install the oneAPI toolkit, see its `Installation Guide `_. If you wish to use a system package manager, see `this `_ guide. Host system support =================== Packages mentioned in this document have been validated with the following platform configurations: .. list-table:: :header-rows: 1 * - Host system - GPU * - 12th Generation Intel® Core™ processors, such as Alder Lake-H, Alder Lake-P, Alder Lake-U, Alder Lake-S, and Alder Lake-HX - Intel® Arc™ A-Series Graphics (Alchemist) * - 11th Generation Intel® Core processors, such as Tiger Lake - Intel® Arc™ A-Series Graphics (Alchemist) * - 3rd Gen Intel® Xeon Scalable Ice Lake, such as the M50CYP family - Intel® Data Center GPU Flex Series