Edit Info Other
Login

Optimus"

Differences between revisions 4 and 5
Revision 4 as of 2016-10-26 19:34:58
Size: 2244
Comment:
Revision 5 as of 2016-10-27 14:06:31
Size: 2694
Comment:
Deletions are marked like this. Additions are marked like this.
Line 6: Line 6:
== GLVND enabled mesa and KMS for nvidia == !!! BIG FAT WARNING - This is still experimental documentation, only experimented users should follow.

== GLVND enabled mesa ==
This will enable a version glvnd enabled mesa that will replace the fedora version.

Note: Copr is not multilib compliant, you need to copy the x86_64 repo as a new file and replace "arch" to i386. if using 32bit programs.
Line 10: Line 15:
}}}

== KMS for nvidia ==
Enable Kernel Mode Setting for nvidia-drm, this is needed for buffer sharing with the intel adapter:
{{{

Introduction

There are additional steps needed to integrate the package with optimus.

Also note that NVIDIA currently only support "outputsource" and not "offloadsink". It means that you cannot disable the dGPU (nvidia)

!!! BIG FAT WARNING - This is still experimental documentation, only experimented users should follow.

GLVND enabled mesa

This will enable a version glvnd enabled mesa that will replace the fedora version.

Note: Copr is not multilib compliant, you need to copy the x86_64 repo as a new file and replace "arch" to i386. if using 32bit programs.

dnf copr enable kwizart/glvnd
dnf update

KMS for nvidia

Enable Kernel Mode Setting for nvidia-drm, this is needed for buffer sharing with the intel adapter:

grubby --update-kernel=$(uname -r) --args="nvidia-drm.modeset=1" --remove-args="video=vesa:off"

 [ -f /boot/grub2/grub.cfg ] && grub2-mkconfig -o /boot/grub2/grub.cfg

 [ -f /boot/efi/EFI/fedora/grub.cfg ] && grub2-mkconfig -o /boot/efi/EFI/fedora/grub.cfg

Additional Configuration

Fedora 25

Not yet supported because xorg-server ABI but it should be simpler.

Fedora 24

For Fedora 24, you still need a (complicated) xorg.conf:

Please verify to Update the BusID earch GPU, specially for the nvidia device.

cat>/etc/X11/xorg.conf<<EOF
# RPM Fusion - nvidia-xorg.conf
# 

Section "ServerLayout"
    Identifier "layout"
    Screen 0 "nvidia"
    Inactive "intel"
EndSection

Section "Device"
    Identifier "intel"
    Driver "modesetting"
    # Change BusID if necessary. Tips: (lspci | grep VGA) (Change 00:02.0 to 0:2:0)
    BusID "PCI:0:2:0"
    Option "AccelMethod"  "none"
EndSection

Section "Screen"
    Identifier "intel"
    Device "intel"
EndSection

Section "Device"
    Identifier "nvidia"
    Driver "nvidia"
    # Change BusID if necessary. Tips: (lspci | grep 3D) (Change 01:00.0 to 1:0:0)
    BusID "PCI:1:0:0"
    Option "AllowEmptyInitialConfiguration"
EndSection

Section "Screen"
    Identifier "nvidia"
    Device "nvidia"
EndSection
EOF


cat>/etc/X11/xinit/xinitrc.d/05-nvidia.sh<<EOF
#!/bin/bash

xrandr --setprovideroutputsource modesetting NVIDIA-0
xrandr --auto

EOF
chmod +x /etc/X11/xinit/xinitrc.d/05-nvidia.sh

Others Display Manager tweaks, needed for GDM, KDM, LightDM, etc:

https://wiki.archlinux.org/index.php/NVIDIA_Optimus#Display_Managers

References

Howto/Optimus (last edited 2023-11-14 09:37:58 by anonymous)