Note:

Deploy NVIDIA RTX Virtual Workstation on Oracle Cloud Infrastructure

Introduction

NVIDIA RTX Virtual Workstation software enables users to run high-performance simulations, graphic rendering, and design workloads on cloud, with a native workstation-like performance. It unlocks powerful rendering capabilities provided by graphic APIs such as OpenGL or DirectX, bringing breakthrough graphics performance to the cloud.

Objective

Leverage RTX and NVIDIA Virtual GPU technology using NVIDIA A10 GPU-enabled compute shapes on Oracle Cloud Infrastructure (OCI).

Task 1: Provision a compute instance on OCI for NVIDIA RTX virtual workstation

  1. Create a Virtual Cloud Network (VCN) and launch a compute instance on OCI. For more information, see:

  2. Choose one from these available GPU.A10 shapes.

    VM.GPU.A10.1
    
    VM.GPU.A10.2
    
    BM.GPU.A10.4
    
  3. When launching a compute instance change shape to one of the above shapes. To launch GPU.A10 VM, click Specialty and Previous Generation, and select one of VM.GPU.A10 shapes. For bare metal servers, click Bare metal machines and select BM.GPU.A10.4 shape.

  4. If your tenancy does not have a service limit set for GPU.A10, these shapes will not be in the shape list.

    • To check your tenancy limits in the OCI Console, set the region where you are going to provision a GPU.A10 compute instance, open the navigation menu and click Governance & Administration.

    • Under Tenancy Management, select Limits, Quotas and Usage.

    • Set the service to Compute, select one of availability domains in the scope field, and type GPU.A10 in the resource field.

    • Select GPUs for A10 based VM and BM instances.

      Image1

  5. Compute limits are per availability domain. Check if the limit is set in any of availability domains of the region. If the service limit is set to 0 for all availability domains, you can click on the “request a service limit increase” link and submit a limit increase request for this resource.

    Note: In order to access Limits, Quotas and Usage you must be a member of the tenancy Administrators group or your group must have a policy assigned to read LimitsAndUsageViewers.

  6. Currently OCI GPU.A10 compute shapes support Oracle Linux, Ubuntu and Rocky Linux. Windows is supported by VM shapes only.

    Note: Rocky Linux is not officially supported by NVIDIA.

  7. When provisioning a compute instance on OCI, use a standard OS image. Do not use GPU enabled images because the installed NVIDIA GPU driver does not support RTX virtual workstation (vWS) that requires NVIDIA vGPU driver to be installed.

    Image2

Task 2: Download and install NVIDIA vGPU driver

  1. Download NVIDIA vGPU driver as described in Downloading NVIDIA vGPU software. If you don’t have an enterprise account with NVIDIA, you can register for trial at Virtual GPU (vGPU) Software Free 90Days Trial - NVIDIA.

  2. Log in to the NVIDIA Enterprise Application HUB using your NVIDIA Enterprise account.

  3. Open the NVIDIA Licensing Portal and select Software Downloads. Apply the following filters:

    • Product Family: “VGPU”

    • Platform: “Linux KVM”

    Image3

  4. Sort by Release Date and download the package with the latest vGPU drivers. For example, currently the latest vGPU version is 15.1.

  5. Unzip the file and go to the Guest_Drivers folder. There you will find vGPU driver installation files for Windows and Linux.

Note: If you are using Linux, follow Task 3, 4, 5 and if you are using Windows, go to Task 6.

Task 3: Install NVIDIA vGPU driver on Linux

Oracle Linux 8

  1. Copy NVIDIA Linux driver NVIDIA-Linux-x86_64-xxx.xx.xx-grid.run to the provisioned compute instance.

  2. If you are using Oracle Linux 8.7 or later Oracle Linux image, prior to installing NVIDIA driver enable gcc-toolset-11 by running the following command.

    scl enable gcc-toolset-11 bash
    
  3. You will also need to disable nouveau driver that has a conflict with NVIDIA driver. Check if nouveau driver is loaded by running the following command.

    lsmod | grep nouveau
    
  4. If it shows nouveau driver in the output of the command, you’ll need to disable it first. To disable nouveau driver on Oracle Linux create the /etc/modprobe.d/blacklist-nouveau.conf file and add the content below.

    blacklist nouveau
    
    options nouveau modeset=0
    
  5. Save the file and regenerate initramfs.

    sudo dracut --force
    
  6. After disabling the driver reboot the server.

    sudo reboot
    
  7. Install NVIDIA vGPU driver by running the following command.

    sudo bash ./NVIDIA-Linux-x86_64-xxx.xx.xx-vgpu-kvm.run
    
  8. Ignore warnings and click OK to continue with the installation. Reboot the server.

    sudo reboot
    

Rocky Linux 9

  1. Copy NVIDIA Linux driver NVIDIA-Linux-x86_64-xxx.xx.xx-grid.run to the provisioned compute instance.

  2. Install Linux headers matching the version of Linux kernel.

    sudo dnf install kernel-devel-$(uname -r)
    
  3. If it fails to find Linux headers matching the kernel version, upgrade Linux kernel and reboot the server.

    sudo dnf install kernel
    
    sudo reboot
    
  4. After reboot, reinstall Linux headers to match Linux kernel version.

    sudo install kernel-devel -y
    
  5. Check if nouveau driver is loaded by running the following command.

    lsmod | grep nouveau
    
  6. If it shows nouveau driver in the output of the command, you’ll need to disable it first. To disable nouveau driver on Oracle Linux create the /etc/modprobe.d/blacklist-nouveau.conf file and add the content below.

    blacklist nouveau
    
    options nouveau modeset=0
    
  7. Save the file and regenerate initramfs.

    sudo dracut --force
    
  8. After disabling the driver reboot the server.

    sudo reboot
    
  9. Install NVIDIA vGPU driver by running the following command.

    sudo bash ./NVIDIA-Linux-x86_64-xxx.xx.xx-vgpu-kvm.run
    
  10. Ignore warnings and click OK to continue with the installation. Reboot the server.

    sudo reboot
    

Ubuntu 22

  1. Copy NVIDIA Linux driver NVIDIA-Linux-grid-xxx.xx.xx_amd64.deb to the provisioned compute instance.

  2. Check if nouveau driver is loaded by running the following command.

    lsmod | grep nouveau
    
  3. If it shows nouveau driver in the output of the command, you’ll need to disable it first. To disable nouveau driver on Oracle Linux create the /etc/modprobe.d/blacklist-nouveau.conf file and add the content below.

    blacklist nouveau
    
    options nouveau modeset=0
    
  4. Save the file and regenerate initramfs.

    sudo dracut --force
    
  5. After disabling the driver, reboot the server.

    sudo reboot
    
  6. Install NVIDIA vGPU driver by running the following command.

    sudo apt install ./NVIDIA-Linux-grid-xxx.xx.xx_amd64.deb
    
  7. Reboot the server.

    sudo reboot
    

Task 4: Verify NVIDIA vGPU driver installation

Task 5: Enable NVIDIA RTX Virtual Workstation

  1. To enable the NVIDIA RTX Virtual Workstation feature, edit /etc/nvidia/gridd.conf.

    sudo vi /etc/nvidia/gridd.conf
    
  2. Add a line.

    FeatureType=2
    
  3. Save the changes and close the file.

  4. Check if GSP firmware is enabled.

    nvidia-smi -q | grep GSP
    
  5. If GSP firmware is enabled, the command displays GSP firmware version.

    GSP Firmware Version                  : 525.85.05
    
  6. If GSP firmware is enabled, disable it by setting the NVIDIA module parameter NVreg_EnableGpuFirmware to 0. Set this parameter by editing the /etc/modprobe.d/nvidia.conf file.

    sudo vi /etc/modprobe.d/nvidia.conf
    
  7. Add the following line to it.

    options nvidia NVreg_EnableGpuFirmware=0
    
  8. If the /etc/modprobe.d/nvidia.conf file does not already exist, create it.

  9. After disabling GSP, you must reboot the server.

    sudo reboot
    
  10. Download the client configuration token from NVIDIA Licensing Portal or DLS appliance. For information about how to register the NVIDIA vGPU license, see Task 7: Register with NVIDIA vGPU Software License Server.

  11. Copy the client configuration token to the default location in /etc/nvidia/ClientConfigToken and set the file permissions to 744.

    sudo chmod 744 /etc/nvidia/ClientConfigToken/client_configuration_token_*.tok
    

    Note: If you want to store the client configuration token in a custom location, copy the token to the directory that you created and set the ClientConfigTokenPath configuration parameter in /etc/nvidia/gridd.conf to point to this directory.

  12. Restart nvidia-gridd service.

    sudo systemctl restart nvidia-gridd
    
  13. Run nvidia-smi -q and check that the Product Brand is set to NVIDIA RTX and License Status displays “Licensed”.

    Image5

  14. If it fails to obtain the license and shows License Status as “Unlicensed”, check the nvidia-gridd service log.

    sudo grep gridd /var/log/messages
    

Task 6: Install NVIDIA vGPU driver on Windows

  1. Copy the NVIDIA Windows driver package to the guest VM or physical host where you are installing the driver. Execute the package to unpack and run the driver installer. Accept the license agreement and select Express installation option.

    Image6

  2. OCI A10 GPU VM is configured with GPU passthrough, and therefore you must set the vGPU driver behavior via regedit. For more information, see Virtual GPU Client Licensing User Guide.

  3. Add the FeatureType DWord (REG_DWORD) registry value to the Windows registry key.

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\nvlddmkm\Global\GridLicensing
    
  4. Set this value to 2 to enable NVIDIA RTX Virtual Workstation license.

  5. Restart the NVIDIA Display Container LS service.

  6. Download the client configuration token from NVIDIA Licensing Portal or DLS appliance. For information about how to register the NVIDIA vGPU license, see Task 7: Register with NVIDIA vGPU Software License Server.

  7. Copy the client configuration token to the folder.

    %SystemDrive%:\Program Files\NVIDIA Corporation\vGPU Licensing\ClientConfigToken
    
  8. From a command line or PowerShell, run nvidia-smi -q and check that the Product Brand is set to NVIDIA RTX and License Status displays “Licensed”.

    Image7

    Note: On Windows, nvidia-smi.exe is installed by default in the C:\Program Files\NVIDIA Corporation\NVSMI folder.

  9. If it fails to obtain the license and shows License Status “Unlicensed”, check licensing messages in the log.

    %SystemDrive%\Users\Public\Documents\NvidiaLogging\Log.NVDisplay.Container.exe.log
    

Task 7: Register with NVIDIA vGPU Software License Server

vGPUs must be registered with NVIDIA Software License Server. vGPU licensing is enforced through NVIDIA software and the performance of the virtual GPU is degraded over time if the VM fails to obtain a license. Starting from vGPU version 13.0, NVIDIA License System supports the following types of service instances:

You can download DLS virtual appliance from NVIDIA Licensing Portal.

Acknowledgments

Author - Michael Prestin (Master Principal Cloud Architect)

More Learning Resources

Explore other labs on docs.oracle.com/learn or access more free learning content on the Oracle Learning YouTube channel. Additionally, visit education.oracle.com/learning-explorer to become an Oracle Learning Explorer.

For product documentation, visit Oracle Help Center.