电脑显示问题
个人情况描述
电脑显卡HDMI连接显示器正常,但是通过主板的VGA连接到显示器,呈现黑屏。使用sudo dmidecode -t baseboard查看主板信息为超微X11SPA-T。
用VGA显示的利与弊
利:不接在显卡上不会占用显卡资源,完全避免在训练的过程中出现modeset争抢问题。
弊:最高为1080P。
问题解决
- 重启按
Delete进入BIOS界面,Advanced -> PCIe/PCI/PnP Configuration -> VGA Priority,设置为Onboard(优先主板自带VGA口输出) - 断开HDMI线,接好VGA线。
- 经过一段时间的自动调整后顺利进入登录界面,登录账号。
- 登录后只剩下光标,其余全部黑屏,这时按
Ctrl + Alt +F3进入TTY界面,输入账号和密码。-
然后需要确认使用X11而不是Wayland显示。
loginctl list-sessions看下面有没有c开头的,如图下图。图中是c2所以用loginctl show-session c2 -p Type确认,如果是会输出Type=x11。
-
一般主页黑屏是因为硬件加速,尝试临时禁用(重启之后还是需要这样做一次):
-
# 创建GNOME环境配置,关闭硬件渲染
mkdir -p ~/.config/environment.d
echo "MUTTER_NO_HARDWARE_ACCEL=1" | tee ~/.config/environment.d/99-no-gpu-accel.conf
# 重启图形管理器
sudo systemctl restart gdm3- 成功进入之后可以调节一下分辨率。使用
xrandr查看支持的分辨率,我支持1920x1080 60.00(60.00是帧数),那就到Ubuntu设置里面调成该分辨率。
静态显示内容右侧有拖影
大概率是VGA线的问题,可能抗干扰不行(太细,没磁环等等)。
- 非常不幸,7.24训练中开屏幕出Bug,报错内容为:
nvidia-modeset: ERROR: GPU:0 ERROR while waiting for GPU progress: 0x00000c67d:0。说明单纯改用VGA并没有完全配置对。让我们再试试豆包的解决方案(先这么做了,暂时不知道效果)。
- 先改
nvidia-gdm-fix.conf
sudo vi /etc/modprobe.d/nvidia-gdm-fix.confblacklist nouveau
options nouveau modeset=0
options nvidia-drm modeset=1 fbdev=0
options nvidia NVreg_GspPowerManagement=0执行刷新:
sudo update-initramfs -u- GRUB只改一行,关闭PCIe省电(根治GPU休眠超时)
sudo nano /etc/default/grubGRUB_CMDLINE_LINUX_DEFAULT="quiet splash nvidia-drm.modeset=1 pci_aspm=off"刷新grub
sudo update-grub- GDM强制Xorg,关闭Wayland
sudo nano /etc/gdm3/daemon.conf[security]
WaylandEnable=false- 两行命令永久锁死GPU不休眠+常驻驱动
# 强制显卡PCIe永不省电
echo 'ACTION=="add", SUBSYSTEM=="pci", ATTR{vendor}=="0x10de",ATTR{class}=="0x030000",ATTR{power/control}="on"' | sudo tee /etc/udev/rules.d/99-nosleep.rules
sudo udevadm control --reload-rules
# 显卡驱动常驻内存,不会临时休眠唤醒
sudo systemctl enable --now nvidia-persistenced
sudo nvidia-smi -pm 1- 全部做完重启
sudo reboot