Created søndag 23 oktober 2016
This will cover the installation and configuration of display drivers for intel and nvidia - along with optimus management with bumblebee.
NOTE !
Be sure, that if you're are gonna use additional kernels, that you install and configure these kernels BEFORE you install your graphic drivers. Otherwise you will have to do these steps again.
Intel HD
# Provided by the mesa driver
Installation
# Install the following packages (32-bit support included)
$ pacman -S mesa xf86-video-intel mesa-libgl lib32-mesa-libgl mesa-demos
Configuration
# Get the BusID
$ lspci | grep -E "VGA|3D"
# Note down the xx:xx.x value and convert the string from xx : xx . x to xx : xx : x
# Create a configuration file in /etc/X11/xorg.conf.d/20-intel.conf
Section "Device" Identifier "Intel Graphics" Driver "intel" BusID "00:02:0" # Make sure it matches above output ! EndSection
nVidia
# The nvidia driver has already been installed with DKMS
# Follow these steps to complete the nvidia setup.
Installation
# Install the following packages (32-bit support included)
$ pacman -S nvidia-utils lib32-nvidia-utils nvidia-settings
Configuration
# Get the BusID the same way as the example above (Intel HD)
# Create a configuration file in /etc/X11/xorg.conf.d/20-nvidia.conf
Section "Device" Identifier "nvidia" Driver "nvidia" BusID "03:00:0" # Make sure it matches the nvidia bus ! EndSection
nVidia hook
#
Bumblebee
# For the Optimus technology
Installation
# The following packages is needed (32-bit support included)
$ pacman -S bumblebee lib32-virtualgl
# Add user to the bumblebee group
$ gpasswd -a <USERNAME> bumblebee
# Enable the bumblebeed.service and reboot your system
$ systemctl enable bumblebeed.service
$ reboot
Confirm Installation
# Check if your installation works as intended
$ optirun glxspheres64
Configuration
# The bumblebeed main configuration file can be found at /etc/bumblebee/bumblebee.conf
Compression
# You can change/test the different compression methods
$ optirun -c <compress-method>
# Compressed methods, that adds load to the CPU
# Uncompressed methods, that adds load to the GPU
# I THINK, that proxy is my preferred option.
# Less FPS and performance, but seems not to load the system as much.
# Persistent change for all application. Proxy is the default.
# Edit the configuration file and add your preferred <compress-method> to VGLTransport=
VGLTransport=proxy
Pixel Readback
# Setting VGL_READBACK to pbo should have improved performance - I did not notice any though.
# The default value;
$ VGL_READBACK=sync optirun glxspheres64
# To change the PR to pbo;
$ VGL_READBACK=pbo optirun glxspheres64
# Persistent change
# The preferred option can be set in the configuration file.
VGL_READBACK=pbo
General Usage
# To run an application with the dedicated GPU (nvidia)
$ optirun application [application-parameter]
# Ex. :
$ optirun firefox https://sloa.dk
# To open the nvidia settings panel
$ optirun -b none nvidia-settings -c :8