Skip to content

2.6 NVIDIA Settings

D3vil0p3r edited this page May 29, 2023 · 3 revisions

In general, the real GPU cannot be used on virtualization software that don't support the GPU Passthrough (i.e., Oracle VirtualBox or VMware Workstation). So, for users that install Athena OS in baremetal or on a virtualized environment by VMware vSphere, the correct setting of NVIDIA GPU has two scenarios:

  1. Client with Integrated GPU (i.e., Intel GPU) and dedicated GPU (i.e., ASUS ROG Strix GeForce RTX 3060)
  2. Client without Integrated GPU but only a dedicated GPU (i.e., ASUS ROG Strix GeForce RTX 3060)

Note that in Athena OS, the NVIDIA driver that is used is the DKMS. DKMS is used for custom kernels, and Linux Zen is considered a custom kernel.

Remember: some packages could disable NVIDIA modules (i.e., bumblebee). For checking if NVIDIA modules are disabled, give a look to the files in /etc/sysctl.d/ directory.

Integrated GPU and Dedicated GPU scenario

During the installation phase in Calamares, Athena will set the NVIDIA drivers automatically because it recognizes your hardware. After the installation, everything will be set automatically and the switch between Integrated and Dedicated GPU will be managed by NVIDIA Optimus.

Dedicated GPU only scenario

During the installation phase in Calamares, Athena will set the NVIDIA drivers automatically because it recognizes your hardware. After the installation, run sudo pacman -S nvidia-open-dkms and reboot. Now your system should use your dedicated GPU.

Important Notes

On the first versions of Athena OS, for managing switching between NVIDIA and Integrated GPUs, nvidia-exec has been used for Wayland environment, because Wayland does not support Optimus Manager. It should require a set of environment variables that we stored in /etc/environments. The problem of this approach is that, in Xorg, when Optimus Manager switches to Integrated mode, nvidia-exec (or better, its nvx service) still forces to use NVIDIA module, and it generates some flickering for example when you open system settings and pass the mouse pointer over the list of the sections on the left of the window.

Not sure if we can leave nvidia-exec installed and just remove only its variables in /etc/environments. In general it is possible to check the value of XDG_SESSION_TYPE and, if it is "Wayland", set the variables, but the problem is that Optimus Manager is installed on the system, so it is better waiting for a future where Optimus Manager will support also Wayland.

Anyway, nvidia-exec should be used only on Wayland environment where the user has both NVIDIA GPU and an integrated GPU. If it has only an NVIDIA GPU, it does not need to use nvidia-exec because the system already recognizes the GPU.