########
Overview
########

.. contents:: Table of Contents

----------

This guide provides installation and uninstallation procedures for the AMDGPU
stack.

For information about how to install ROCm on AMD desktop GPUs based on the
RDNA™ 3 architecture, see
`Use ROCm on Radeon GPUs <https://rocm.docs.amd.com/projects/radeon/en/latest/index.html>`_.
For more information about supported AMD Radeon™ desktop GPUs, see
`Radeon Compatibility Matrices <https://rocm.docs.amd.com/projects/radeon/en/latest/docs/compatibility.html>`_.

.. note:: The rest of this document will refer to Radeon™ Software for Linux®
     as the AMDGPU stack.

.. note:: Some components, such as OpenCL, are provided by the ROCm stack. For
     simplicity, this subset of ROCm will be included in the use of the term
     "AMDGPU stack". Please see the
     `ROCm documentation <https://rocmdocs.amd.com/en/latest/>`_ for further
     information on other ROCm components.

---------

Stack Use Cases
***************

amdgpu-install supports the All-Open use case

+--------------------+------------------------------------------------+
| Install Use Case   | Components                                     |
+====================+================================================+
| All-Open           | * Base kernel drivers                          |
|                    | * Base accelerated graphics drivers            |
|                    | * Mesa OpenGL                                  |
|                    | * Mesa multimedia                              |
|                    | * OpenCL (optional)                            |
|                    |    - ROCr OpenCL stack (supports Vega 10 and   |
|                    |      later products)                           |
+--------------------+------------------------------------------------+


Install Script
**************

The AMDGPU stack can be installed using a simple installation script
``amdgpu-install``

The ``amdgpu-install`` script does the following:

- Simplifies the installation of the AMDGPU stack by encapsulating the
  distribution specific package installation logic.
- Allows using command line options to specify the following:
  * Use case of the AMDGPU stack to be installed
  * Combination of components
- Performs post-install checks to verify whether the installation was performed
  successfully.
- Installs the uninstallation script which can be used to remove the whole
  AMDGPU stack from the system by using a single command.

The ``amdgpu-install`` script is provided by the installer package. The steps to download the
installer package are specified in :ref:`Downloading-the-Installer-Package`.

---------

You can install a combination of stack components using the ``amdgpu-install``
script by appending comma separated selections to ``--vulkan``, ``--opencl``,
or ``--usecase``, such as:

.. code-block:: bash

  $ amdgpu-install --usecase=graphics,opencl

See ``amdgpu-install -h`` for more options or ``amdgpu-install --list-usecase``
for more available usecases.

Refer to :ref:`Invoking-the-amdgpu-install-script` for additional details.

---------

.. note:: Starting with the 21.40 release, ``amdgpu-install`` has changed and
    some options available in previous releases have been removed.

.. note::
   - When installing the All-Open use case using ``amdgpu-install`` script,
     every component from the All-Open stack will be installed. There is no
     supported way to install arbitrary combinations of these components when
     using ``amdgpu-install`` but you can use the system package manager to do
     so.


   - 32-bit graphics runtime libraries are automatically installed when
     installation is performed using ``amdgpu-install`` script. The addition of
     the "--no-32" option can be used to exclude these runtime libraries.
