Install AMD drivers on Linux instances - Amazon Elastic Compute Cloud

Install AMD drivers on Linux instances

An instance with an attached AMD GPU, such as a G4ad instance, must have the appropriate AMD driver installed. Depending on your requirements, you can either use an AMI with the driver preinstalled or download a driver from Amazon S3.

To install NVIDIA drivers on an instance with an attached NVIDIA GPU, such as a G4dn instance, see Install NVIDIA drivers instead. To install AMD drivers on a Windows instance, see Install AMD drivers on Windows instances.

AMD Radeon Pro Software for Enterprise Driver

The AMD Radeon Pro Software for Enterprise Driver is built to deliver support for professional-grade graphics use cases. Using the driver, you can configure your instances with two 4K displays per GPU.

Supported APIs

  • OpenGL, OpenCL

  • Vulkan

  • AMD Advanced Media Framework

  • Video Acceleration API

AMIs with the AMD driver installed

AWS offers different Amazon Machine Images (AMI) that come with the AMD drivers installed. Open Marketplace offerings with the AMD driver.

AMD driver download

If you aren't using an AMI with the AMD driver installed, you can download the AMD driver and install it on your instance.

These downloads are available to AWS customers only. By downloading, you agree to use the downloaded software only to develop AMIs for use with the AMD Radeon Pro V520 hardware. Upon installation of the software, you are bound by the terms of the AMD Software End User License Agreement.

Prerequisites

  • Install the AWS CLI on your Linux instance and configure default credentials. For more information, see Installing the AWS CLI in the AWS Command Line Interface User Guide.

  • IAM users must have the permissions granted by the AmazonS3ReadOnlyAccess policy.

To install the AMD driver on your Linux instance

  1. Connect to your Linux instance. Install gcc and make, if they are not already installed.

  2. Update your package cache and get the package updates for your instance.

    • For Amazon Linux 2:

      $ sudo amazon-linux-extras install epel -y $ sudo yum update -y
    • For Ubuntu:

      $ sudo dpkg --add-architecture i386 $ sudo apt-get update -y && sudo apt upgrade -y
    • For CentOS:

      $ sudo yum install epel-release -y $ sudo yum update -y
  3. Reboot the instance.

    $ sudo reboot
  4. Reconnect to the instance after it reboots.

  5. Download the latest AMD driver.

    $ aws s3 cp --recursive s3://ec2-amd-linux-drivers/latest/ .
  6. Extract the file.

    • For Amazon Linux 2 and CentOS:

      $ tar -xf amdgpu-pro-*rhel*.tar.xz
    • For Ubuntu:

      $ tar -xf amdgpu-pro*ubuntu*.xz
  7. Change to the folder for the extracted driver.

  8. Add the GPG keys for the driver installation.

    • For Amazon Linux 2 and CentOS:

      $ sudo rpm --import RPM-GPG-KEY-amdgpu
    • For Ubuntu:

      $ sudo apt install linux-modules-extra-$(uname -r) -y $ cat RPM-GPG-KEY-amdgpu | sudo apt-key add -
  9. Run the self install script to install the full graphics stack.

    $ ./amdgpu-pro-install -y --opencl=pal,legacy
  10. Reboot the instance.

    $ sudo reboot
  11. Confirm that the driver is functional.

    $ dmesg | grep amdgpu

    The response should look like the following:

    Initialized amdgpu

Set up an interactive desktop

After you confirm that your instance has the AMD GPU driver installed and amdgpu is in use, you can install an interactive desktop manager. We recommend the MATE desktop environment for the best compatibility and performance.

Prerequisite

Open a text editor and save the following as a file named xorg.conf. You'll need this file on your instance.

Section "ServerLayout" Identifier "Layout0" Screen 0 "Screen0" InputDevice "Keyboard0" "CoreKeyboard" InputDevice "Mouse0" "CorePointer" EndSection Section "Files" ModulePath "/opt/amdgpu/lib64/xorg/modules/drivers" ModulePath "/opt/amdgpu/lib/xorg/modules" ModulePath "/opt/amdgpu-pro/lib/xorg/modules/extensions" ModulePath "/opt/amdgpu-pro/lib64/xorg/modules/extensions" ModulePath "/usr/lib64/xorg/modules" ModulePath "/usr/lib/xorg/modules" EndSection Section "InputDevice" # generated from default Identifier "Mouse0" Driver "mouse" Option "Protocol" "auto" Option "Device" "/dev/psaux" Option "Emulate3Buttons" "no" Option "ZAxisMapping" "4 5" EndSection Section "InputDevice" # generated from default Identifier "Keyboard0" Driver "kbd" EndSection Section "Monitor" Identifier "Monitor0" VendorName "Unknown" ModelName "Unknown" EndSection Section "Device" Identifier "Device0" Driver "amdgpu" VendorName "AMD" BoardName "Radeon MxGPU V520" BusID "PCI:0:30:0" EndSection Section "Extensions" Option "DPMS" "Disable" EndSection Section "Screen" Identifier "Screen0" Device "Device0" Monitor "Monitor0" DefaultDepth 24 Option "AllowEmptyInitialConfiguration" "True" SubSection "Display" Virtual 3840 2160 Depth 32 EndSubSection EndSection

To set up an interactive desktop on Amazon Linux 2

  1. Install the EPEL repository.

    $ sudo amazon-linux-extras install epel -y
  2. Install the MATE desktop.

    $ sudo amazon-linux-extras install mate-desktop1.x -y $ sudo yum groupinstall "MATE Desktop" -y $ sudo systemctl disable firewalld
  3. Copy the xorg.conf file to /etc/X11/xorg.conf.

  4. Reboot the instance.

    $ sudo reboot
  5. (Optional) Install the NICE DCV server to use NICE DCV as a high-performance display protocol, and then connect to a NICE DCV session using your preferred client.

To set up an interactive desktop on Ubuntu

  1. Install the MATE desktop.

    $ sudo apt install xorg-dev ubuntu-mate-desktop -y $ sudo apt purge ifupdown -y
  2. Copy the xorg.conf file to /etc/X11/xorg.conf.

  3. Reboot the instance.

    $ sudo reboot
  4. Install the AMF encoder for the appropriate version of Ubuntu.

    $ sudo apt install ./amdgpu-pro-20.20-*/amf-amdgpu-pro_20.20-*_amd64.deb
  5. (Optional) Install the NICE DCV server to use NICE DCV as a high-performance display protocol, and then connect to a NICE DCV session using your preferred client.

  6. After the DCV installation give the DCV User video permissions:

    $ sudo usermod -aG video dcv

To set up an interactive desktop on CentOS

  1. Install the EPEL repository.

    $ sudo yum update -y $ sudo yum install epel-release -y
  2. Install the MATE desktop.

    $ sudo yum groupinstall "MATE Desktop" -y $ sudo systemctl disable firewalld
  3. Copy the xorg.conf file to /etc/X11/xorg.conf.

  4. Reboot the instance.

    $ sudo reboot
  5. (Optional) Install the NICE DCV server to use NICE DCV as a high-performance display protocol, and then connect to a NICE DCV session using your preferred client.