============================================
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