Dell XPS 15 9570(2018)禁用 nvidia GPU

Dell XPS 15 9570(2018)禁用 nvidia GPU

我最近购买了一台戴尔 XPS 15 9570,并已在其上成功安装了 Ubuntu 18.04。

大部分事情都按预期进行,但存在一些与电源和 nvidia GPU 相关的问题。

目前,我认为有两个主要问题:

  1. Nvidia GPU 保持不变默认情况下,即使我运行 ,启动时也会sudo prime-select intel禁用它。我可以使用sudo tee /etc/acpi/bbswitch <<<OFF终端中的 bbswitch 禁用它。我希望能够在启动时禁用显卡,因为我只在 Linux 下使用笔记本电脑来提高工作效率。
  2. 使用交流电源时笔记本电脑无法进入睡眠状态bbswitch 报告称 GPU 已关闭。使用电池供电时,它通常会进入睡眠状态,但使用交流电供电时,它会进入睡眠状态,但再次打开笔记本电脑盖时会挂起,只能选择硬关机。

设置

我在配备 16G RAM、NVidia 1050 TI 显卡和 i7-8750H 处理器的 Dell XPS 15 9570 上运行 Ubuntu 18.04。

按时间顺序排列的系统设置操作

  • 安装 Ubuntu 18.04,nouveau.modeset=0以便能够首次运行实时映像和已安装的系统
  • 从面板安装正确的 nvidia 驱动程序Additional Drivers。这将安装驱动程序以及nvidia-prime
  • 使用sudo prime-select intel选择英特尔卡。重新启动。这确保英特尔卡是系统使用的卡。然而,独立卡仍然即使它没有被使用。这是由 报告的cat /proc/acpi/bbswitch。此命令返回0000:01:00 ON,表明 GPU 已打开。此外,powertop显示放电率为 ~20W,而当我通过 bbswitch 手动关闭 GPU 时,放电率为 ~10W。
  • 安装bbswitch以确保我可以真正禁用独立卡,并且它可以手动使用sudo tee /etc/acpi/bbswitch <<<OFF

我尝试过的事情

  • 尝试安装 bumblebee,因为它应该可以控制 bbswitch 并在需要时禁用/启用独立 GPU。安装 bumblebee 导致我无法加载系统。我不得不通过转到根控制台并清除 bumblebee 来恢复系统*
  • 我尝试修改以/etc/modules/包含 bbswitch load_state=0 unload_state=1bbswitchGitHub 页面。这不起作用,只有当我离开bbswitch那里时它才会加载 bbswitch,但之后我需要手动禁用 GPU。

欢迎提出任何想法。如需了解更多详情,请随时向我询问。如此完美的笔记本电脑在 Ubuntu 下出现这些问题,真是令人沮丧。

答案1

在运行 Ubuntu 18.04 的 9750 上,每当我在登录或启动前使用 bbswitch 关闭 dgpu 时,我的系统就会冻结。

在尝试了许多不同的方法并多次重启后,我决定采用一种解决方法:安排一个 cron 作业在重启后经过一段时间延迟(60 秒)来激活 bbswitch,这样我就可以在 bbswitch 启动之前登录。

在终端中以 root 身份打开 crontab:

sudo crontab -e

添加到计划任务:

@reboot sleep 60 && /sbin/modprobe bbswitch

将 /sbin/modprobe 替换为您的 modprobe 可执行文件所在的位置,假设已安装 bbswitch。

还添加到 /etc/modprobe.d/bbswitch.conf:

options bbswitch load_state=0 unload_state=1

这会在加载 bbswitch 时关闭 dgpu,并在卸载 bbswitch 时打开。请参阅这里更多细节。

对于盖子问题,我必须编辑logind.conf:

sudo nano /etc/systemd/logind.conf

更改以下行:

HandleLidSwitchDocked=ignore

HandleLidSwitchDocked=suspend 

奇怪的是,如果您保留默认设置(=忽略),连接外部显示器并关闭盖子,计算机在重新打开时不会冻结。使用 =忽略和外部显示器时,计算机会在您关闭盖子时暂停,但您可以使用鼠标/键盘唤醒外部显示器。

答案2

这些是我在 Linux 上禁用 nvidia GPU 并启用处理器上的集成 Intel GPU 的笔记。这使我的 dell xps 15 功耗从 25-30 瓦降低到 11-12 瓦。电池寿命从 3 小时延长到 9-10 小时。我成功禁用了 GPU 本身,但它无法正确启动到 Linux,即使我让它工作了,它也不会让我调整背光。我现在已经解决了所有这些问题,一切都正常。

System Dell XPS 15 9560 9 cell battery
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=18.04
DISTRIB_CODENAME=bionic
DISTRIB_DESCRIPTION="Ubuntu 18.04.1 LTS"
Linux version 4.15.0-39-generic (buildd@lgw01-amd64-054) (gcc version 7.3.0 (Ubuntu 7.3.0-16ubuntu3)) #42-Ubuntu SMP Tue Oct 23 15:48:01 UTC 2018

我基本遵循了本指南,但必须进行一些调整https://gist.github.com/tomwwright/f88e2ddb344cf99f299935e1312da880

指南如下

# perform a fresh install of Ubuntu 17.10

# upgrade the kernel to v4.13.10
mkdir ~/kernel-v4.13.10
cd ~/kernel-v4.13.10
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13.10/linux-headers-4.13.10-041310_4.13.10-041310.201710270531_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13.10/linux-headers-4.13.10-041310-generic_4.13.10-041310.201710270531_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.13.10/linux-image-4.13.10-041310-generic_4.13.10-041310.201710270531_amd64.deb
sudo dpkg -i *.deb

# configure required kernel parameter (https://github.com/Bumblebee-Project/bbswitch/issues/148)
sudo nano /etc/default/grub
# change this parameter to: GRUB_CMDLINE_LINUX_DEFAULT="quiet splash acpi_rev_override=1"
# rebuild the bootloader
sudo update-grub2

# install and configure TLP and PowerTOP
sudo apt-get install tlp tlp-rdw powertop
sudo tlp start
# PowerTOP should be reporting a battery discharge rate of ~8-12W
sudo powertop --auto-tune     # auto-tune parameter will configure some recommended power-saving tweaks

# install Nvidia 384.90 drivers
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo apt-get install nvidia-384=384.90-0ubuntu3.17.10.1
sudo apt-mark hold nvidia-384   # stop this package being auto-updated during package resolution

# test that the nvidia drivers are working: nvidia-smi should output some GPU stats
nvidia-smi

# PowerTOP should now be reporting a battery discharge rate of ~15-20W
sudo powertop

# install Nvidia Prime: so we can disable the dedicated GPU when we don't want it
sudo apt-get install nvidia-prime
sudo prime-select intel

# REBOOT: when we boot back in, GPU should now be disabled

sudo powertop   # PowerTOP should be reporting ~8-12W dischargehe 
nvidia-smi      # nvidia-smi should complain about missing drivers

sudo prime-select nvidia  # switch back to dedicated graphics
sudo powertop   # PowerTOP should start reporting ~15-20W discharge
nvidia-smi      # nvidia-smi should report GPU info

sudo prime-select intel   # the GOTCHA: prime-select intel doesn't re-disable the graphics card
sudo powertop   # PowerTOP still reporting ~15-20W discharge
nvidia-smi      # nvidia-smi correctly complaining about missing drivers

按照指南操作后 1)运行 powertop 并打开/关闭 nvidia,或者

sudo nano /lib/systemd/system/gpuoff.service

关闭 GPU 电源

/sys/bus/pci/devices/0000\:01\:00.0/power/control

与在 powertop 中禁用 gpu 效果相同

sudo nano /lib/systemd/system/gpuoff.service
sudo systemctl start gpuoff
sudo systemctl enable gpuoff 
#prime-select nvidia
prime-select intel
prime-select query

2) sudo vim /etc/default/grub

#grub now that it works:
GRUB_DEFAULT=0
GRUB_HIDDEN_TIMEOUT_QUIET=true
GRUB_TIMEOUT=10
GRUB_DISTRIBUTOR=`lsb_release -i -s 2> /dev/null || echo Debian`
GRUB_CMDLINE_LINUX_DEFAULT="acpi_backlight=vendor" # < boots
GRUB_CMDLINE_LINUX=""

3) < 这是一个重要的修复,可使其在没有 nomodeset 的情况下正常启动。编辑 /etc/X11/xorg.conf 等,并在第一部分设置 intel 和 inactive nvidia 解决了该问题。将第一部分设置为:

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

现在要更改背光,我使用“light”命令。我想这是我从 github 某处下载的东西

相关内容