跳过正文
  1. Index/

Linux下最佳显卡解决方案

·289 字·2 分钟
Einsam
作者
Einsam
A little bit about you

前言
#

bumblebee 的 optirun 的兼容性问题; primusrun 关垂直同步的画面撕裂,开垂直同步的输入延迟;直接使用 NVIDIA 的耗电等一系列双显卡之痛之后,发现 optimus-manager 十分适合。可以设置开机默认使用 Intel 还是 Nvidia ,可以随时在这两者之间切换。


安装
#

安装前须知: optimus-manager 上游直接支持的Display Managersddmlightdmgdm ,其他 DM 要用的话需要额外配置 Xsetup 脚本,这里不介绍。

可以通过AUR安装optimus-manager

也可以通过archlinxucn源直接安装

$ sudo pacman -Sy optimus-manager

安装完成后开启服务

$ sudo systemctl enable optimus-manager.service

配置
#

首先确保/etc/X11/xorg.conf/ext/X11/xorg.conf.d下没有其他显卡与显示相关的配置,如果有的话可以直接删除,因为optimus-manager会自动生成显卡配置/etc/X11/xorg.conf.d/10-optimus-manager.conf

如果已经安装bumblebee,请执行以下命令关闭bumblebeed

$ sudo systemctl disable bumblebeed

检查/etc/modules-load.d/以确保bbswitch模块不要在开机时被加载

最后安装nvidia闭源驱动

$ sudo pacman -S nvidia-utils

配置 optimus-maager
#

$ sudo mkdir -p /etc/optimus-manager

optimus-manager默认配置复制至/etc/optimus-manager进行另外配置

$ sudo cp /usr/share/optimus-manager.conf /etc/optimus-manager/optimus-manager.conf
$ sudo vim /etc/optimus-manager/optimus-manager.conf

各选项配置

[optimus]
# 切换方式,可能值: nouveau, bbswitch, none
# 如果选择 none,Nvidia在你使用 Intel 的时候将一直处于通电状态
# 如果使用 bbswitch, 在你使用 Intel 的时候将无法使用 Nvidia 上的
# 接口输出到外接显示器。
# 使用 bbswitch 必须安装 bbswitch 或者 bbswitch-dkms。
# bbswitch 暂时还不支持 10系以上显卡 (真的不支持?还是 ACPI 锁死问题呢?)
switching=nouveau

# 在 Intel 模式下开启 PCI 电源管理
# 如果不开的话会你会发现耗电量会比较大
# 如果已经使用了 bbswitch 这个选项会被忽略
pci_power_control=yes


[intel]
# 使用哪一个 Intel 驱动
# 可能值: modesetting, intel
driver=modesetting

# 加速模式
# intel 驱动专属,对modesetting无效
# 可能值 :  sna, xna
# 留空以使用默认值
accel=

# 开启 TearFree 选项
# intel驱动的选项, 对modesetting无效
# 可能值: yes, no
# 留空以使用默认值
tearfree=

# DRI 版本. 可能值 : 2, 3
DRI=3

# 是否对 nouveau 开启 modesetting.
# 对 intel 驱动无效
# 如果你使用 bbswitch 作为切换方式,这个选项会被忽略
modeset=yes

[nvidia]
# DRI版本,可能值: 2, 3
DRI=3

# 是否开启 modesetting,如果要使用 PRIME Synchronization 来避免
# 画面撕裂的话,必须开启
modeset=yes

# 是否开启 NVIDIA 驱动的 NVreg_UsePageAttributeTable 选项
# 推荐开启,否则可能会导致 CPU 低性能。
PAT=yes

# DPI 值. 帮你设置登录管理器的 DPI
# 原理是启动登录管理器的时候执行:
# xrandr --dpi 
# 留空以使用默认值
DPI=


# Nvidia 专有选项,选项之间以逗号分隔
# 支持的选项:
# - overclocking : 开启 CoolBits 并在 NVIDIA 面板中解锁超频选项。
# - triple_buffer : 开启三倍缓冲
options=overclocking

配置完成后直接重启生效

用法
#

确保optimus-manager.service已经运行

运行

$ optimus-manager --switch nvidia

切换至nvidia

运行

$ optimus-manager --switch intel

切换至intel

运行

$ optimus-manager --set-startup=intel

设置开机使用intel

图形前端 optimus-manager-qt
#

optimus-manager-qt

optimus-manager-qt

gnome-shell 扩展 optimus-manager-argos

optimus-manager-argos

kde`用户可以从`archlinuxcn`源安装`optimus-manager-qt-kde
$ sudo pacman -Sy optimus-manager-qt-kde

kde用户, 安装optimus-manager-qt

$ sudo pamcna -Sy optimus-manager-qt

转载自https://blog.edward-p.xyz/optimus-manager/