排除故障并解决游戏中 FPS 下降的问题

排除故障并解决游戏中 FPS 下降的问题

我的台式机运行 Ubuntu 22.04.3 LTS 最近出现了 FPS 问题。在 Steam 和 GoG 的游戏中,我的 FPS 都大幅下降。Table Top Simulator 至少有 60 FPS,现在在菜单中只有 10 FPS,而且速度越来越慢。我从 GoG 下载的 Rimworld 现在运行速度也明显变慢了。此外,在我将其暂停后,PC 似乎无法唤醒它。所有东西都亮了,但没有显示任何 UI 或任何东西。我不得不重启电脑。

所以据我所知,这要么是硬件问题,要么是基于操作系统/版本/驱动程序的问题。

我应该如何测试 GPU 来确认它是否出现故障?

我应该如何查看更新是否影响了我的 FPS?

我有一台 GeForce GTX 960,使用 Nvidia-driver-535 驱动程序(据我所知,这是最新的,而且我认为我已经使用了一段时间)

其他有用信息:Ubuntu 22.04.3 LTS cpu:AMD Ryzen 5 5600 6 核处理器 主板:TUF GAMING B550M-PLUS (WI-FI) 存储:SSD

如果需要任何其他信息,请告诉我

编辑:我使用基于运行 echo 的 X11 输出的 Xorg$XDG_SESSION_TYPE

/var/log/apt/history.log 的内容:

Commandline: aptdaemon role='role-commit-packages' sender=':1.118'
Upgrade: thunderbird:amd64 (1:115.5.0+build1-0ubuntu0.22.04.1, 1:115.6.0+build2-0ubuntu0.22.04.1), thunderbird-locale-en:amd64 (1:115.5.0+build1-0ubuntu0.22.04.1, 1:115.6.0+build2-0ubuntu0.22.04.1), thunderbird-locale-en-us:amd64 (1:115.5.0+build1-0ubuntu0.22.04.1, 1:115.6.0+build2-0ubuntu0.22.04.1), thunderbird-gnome-support:amd64 (1:115.5.0+build1-0ubuntu0.22.04.1, 1:115.6.0+build2-0ubuntu0.22.04.1)
End-Date: 2024-01-02  09:59:41

Start-Date: 2024-01-03  15:10:22
Commandline: aptdaemon role='role-commit-packages' sender=':1.122'
Upgrade: openssh-client:amd64 (1:8.9p1-3ubuntu0.5, 1:8.9p1-3ubuntu0.6), google-chrome-stable:amd64 (120.0.6099.129-1, 120.0.6099.199-1), libsqlite3-0:amd64 (3.37.2-2ubuntu0.1, 3.37.2-2ubuntu0.3)
End-Date: 2024-01-03  15:10:28

Start-Date: 2024-01-10  22:16:46
Commandline: aptdaemon role='role-commit-packages' sender=':1.121'
Install: nvidia-firmware-535-535.146.02:amd64 (535.146.02-0ubuntu0.22.04.1, automatic), linux-modules-extra-6.5.0-14-generic:amd64 (6.5.0-14.14~22.04.1, automatic), linux-objects-nvidia-535-6.5.0-14-generic:amd64 (6.5.0-14.14~22.04.1+4, automatic), linux-signatures-nvidia-6.5.0-14-generic:amd64 (6.5.0-14.14~22.04.1+4, automatic), linux-hwe-6.5-headers-6.5.0-14:amd64 (6.5.0-14.14~22.04.1, automatic), linux-modules-6.5.0-14-generic:amd64 (6.5.0-14.14~22.04.1, automatic), linux-image-6.5.0-14-generic:amd64 (6.5.0-14.14~22.04.1, automatic), linux-headers-6.5.0-14-generic:amd64 (6.5.0-14.14~22.04.1, automatic)
Upgrade: google-chrome-stable:amd64 (120.0.6099.199-1, 120.0.6099.216-1), linux-image-generic-hwe-22.04:amd64 (6.2.0.39.40~22.04.16, 6.5.0.14.14~22.04.7), software-properties-common:amd64 (0.99.22.8, 0.99.22.9), python3-software-properties:amd64 (0.99.22.8, 0.99.22.9), libc6:amd64 (2.35-0ubuntu3.5, 2.35-0ubuntu3.6), libc6:i386 (2.35-0ubuntu3.5, 2.35-0ubuntu3.6), locales:amd64 (2.35-0ubuntu3.5, 2.35-0ubuntu3.6), software-properties-gtk:amd64 (0.99.22.8, 0.99.22.9), linux-headers-generic-hwe-22.04:amd64 (6.2.0.39.40~22.04.16, 6.5.0.14.14~22.04.7), linux-generic-hwe-22.04:amd64 (6.2.0.39.40~22.04.16, 6.5.0.14.14~22.04.7), python3-distro-info:amd64 (1.1ubuntu0.1, 1.1ubuntu0.2), distro-info-data:amd64 (0.52ubuntu0.5, 0.52ubuntu0.6), linux-firmware:amd64 (20220329.git681281e4-0ubuntu3.23, 20220329.git681281e4-0ubuntu3.24), distro-info:amd64 (1.1ubuntu0.1, 1.1ubuntu0.2), libc-dev-bin:amd64 (2.35-0ubuntu3.5, 2.35-0ubuntu3.6), brave-browser:amd64 (1.61.109, 1.61.116), libc-bin:amd64 (2.35-0ubuntu3.5, 2.35-0ubuntu3.6), libc-devtools:amd64 (2.35-0ubuntu3.5, 2.35-0ubuntu3.6), libc6-dbg:amd64 (2.35-0ubuntu3.5, 2.35-0ubuntu3.6), libc6-dev:amd64 (2.35-0ubuntu3.5, 2.35-0ubuntu3.6)
End-Date: 2024-01-10  22:18:49

Start-Date: 2024-01-10  22:24:05
Commandline: aptdaemon role='role-commit-packages' sender=':1.121'
Remove: linux-modules-extra-6.2.0-37-generic:amd64 (6.2.0-37.38~22.04.1), linux-objects-nvidia-535-6.2.0-37-generic:amd64 (6.2.0-37.38~22.04.1), linux-hwe-6.2-headers-6.2.0-37:amd64 (6.2.0-37.38~22.04.1), linux-signatures-nvidia-6.2.0-37-generic:amd64 (6.2.0-37.38~22.04.1), linux-modules-6.2.0-37-generic:amd64 (6.2.0-37.38~22.04.1), linux-image-6.2.0-37-generic:amd64 (6.2.0-37.38~22.04.1), linux-headers-6.2.0-37-generic:amd64 (6.2.0-37.38~22.04.1), linux-modules-nvidia-535-6.2.0-37-generic:amd64 (6.2.0-37.38~22.04.1)
End-Date: 2024-01-10  22:24:14

Start-Date: 2024-01-11  16:59:34
Commandline: apt install mesa-utils
Requested-By: danny (1000)
Install: mesa-utils-bin:amd64 (8.4.0-1ubuntu1, automatic), mesa-utils:amd64 (8.4.0-1ubuntu1)
End-Date: 2024-01-11  16:59:35

Start-Date: 2024-01-16  20:54:22
Commandline: aptdaemon role='role-commit-packages' sender=':1.186'
Upgrade: update-manager:amd64 (1:22.04.10, 1:22.04.18), libctf-nobfd0:amd64 (2.38-4ubuntu2.4, 2.38-4ubuntu2.5), google-chrome-stable:amd64 (120.0.6099.216-1, 120.0.6099.224-1), xserver-xorg-core:amd64 (2:21.1.4-2ubuntu1.7~22.04.5, 2:21.1.4-2ubuntu1.7~22.04.7), libbinutils:amd64 (2.38-4ubuntu2.4, 2.38-4ubuntu2.5), transmission-gtk:amd64 (3.00-2ubuntu2, 3.00-2ubuntu2.1), gir1.2-javascriptcoregtk-4.0:amd64 (2.42.3-0ubuntu0.22.04.1, 2.42.4-0ubuntu0.22.04.1), binutils-x86-64-linux-gnu:amd64 (2.38-4ubuntu2.4, 2.38-4ubuntu2.5), gir1.2-webkit2-4.0:amd64 (2.42.3-0ubuntu0.22.04.1, 2.42.4-0ubuntu0.22.04.1), xserver-xorg-legacy:amd64 (2:21.1.4-2ubuntu1.7~22.04.5, 2:21.1.4-2ubuntu1.7~22.04.7), dnsmasq-base:amd64 (2.86-1.1ubuntu0.3, 2.86-1.1ubuntu0.4), xserver-common:amd64 (2:21.1.4-2ubuntu1.7~22.04.5, 2:21.1.4-2ubuntu1.7~22.04.7), xwayland:amd64 (2:22.1.1-1ubuntu0.9, 2:22.1.1-1ubuntu0.10), update-manager-core:amd64 (1:22.04.10, 1:22.04.18), libctf0:amd64 (2.38-4ubuntu2.4, 2.38-4ubuntu2.5), libjavascriptcoregtk-4.0-18:amd64 (2.42.3-0ubuntu0.22.04.1, 2.42.4-0ubuntu0.22.04.1), binutils-common:amd64 (2.38-4ubuntu2.4, 2.38-4ubuntu2.5), xserver-xephyr:amd64 (2:21.1.4-2ubuntu1.7~22.04.5, 2:21.1.4-2ubuntu1.7~22.04.7), python3-update-manager:amd64 (1:22.04.10, 1:22.04.18), transmission-common:amd64 (3.00-2ubuntu2, 3.00-2ubuntu2.1), libwebkit2gtk-4.0-37:amd64 (2.42.3-0ubuntu0.22.04.1, 2.42.4-0ubuntu0.22.04.1), binutils:amd64 (2.38-4ubuntu2.4, 2.38-4ubuntu2.5)
End-Date: 2024-01-16  20:54:32

Start-Date: 2024-01-16  21:13:44
Commandline: apt upgrade
Requested-By: danny (1000)
Upgrade: systemd-hwe-hwdb:amd64 (249.11.4, 249.11.5)
End-Date: 2024-01-16  21:13:45

Start-Date: 2024-01-16  21:23:00
Commandline: apt-get install lm-sensors
Requested-By: danny (1000)
Install: lm-sensors:amd64 (1:3.6.0-7ubuntu1)
End-Date: 2024-01-16  21:23:02

Start-Date: 2024-01-17  12:55:11
Commandline: aptdaemon role='role-commit-packages' sender=':1.199'
Upgrade: libpam-runtime:amd64 (1.4.0-11ubuntu2.3, 1.4.0-11ubuntu2.4), tzdata:amd64 (2023c-0ubuntu0.22.04.2, 2023d-0ubuntu0.22.04), libpam-modules:amd64 (1.4.0-11ubuntu2.3, 1.4.0-11ubuntu2.4), libpam-modules-bin:amd64 (1.4.0-11ubuntu2.3, 1.4.0-11ubuntu2.4), libpam0g:amd64 (1.4.0-11ubuntu2.3, 1.4.0-11ubuntu2.4), brave-browser:amd64 (1.61.116, 1.61.120)
End-Date: 2024-01-17  12:55:20

我确信我的电脑在 1 月 5 日运行良好。到 11 日,我注意到了 FPS 问题。根据上面的更改列表,我怀疑更改是在 2024-01-10 对 nvidia-firmware 进行的。我需要弄清楚如何进行测试,撤消该更新以查看是否导致了问题。

在网上查看了更多内容后,似乎 nvidia-535-6.5.0-14 内核是问题所在。我重启了电脑,在 grub 菜单中,选择了之前的内核。我的 FPS 恢复正常。该内核版本是在 1/10 添加到我的系统中的,这与我开始遇到问题的时间一致。我将研究将备用内核设置为默认内核的步骤,直到新内核发布。不过,我不太确定如何跟踪新内核的发布时间,或者我的操作系统是否会告诉我(我怀疑)。

答案1

因此,该问题似乎源于推出的新内核,并导致了问题。

邮政来自 ubuntu 论坛的 MAFoElffen 帮助我解决了我的问题,而我正在等待新内核。相关部分稍后粘贴在下面,并附上我的补充:

我相信我使用的是旧版驱动程序,因为我的显卡太旧了。您可以在此处查看我认为是不完整的旧版驱动程序设备列表关联来自 Nvidia。我说不完整,因为我的没有出现在列表中。

在按照 MAFoElffen 的步骤解决我的问题之前,我做了以下事情并向其他人提出同样的建议:

  • 重新启动计算机以访问 grub 菜单。
  • 选择 Ubuntu 的高级选项
  • 选择最新的非 6.5.0-14 的内核(我这里是 6.2.0-39-generic)
  • 使用该内核启动
  • 确认此内核功能正常,因为您将在接下来的步骤中将此内核设置为默认内核。(我的 FPS 问题已通过此内核解决)

现在来看看 MAFoElffen 的步骤:

旧版驱动程序:使用 6.2.0 系列内核...代码:

sudo apt remove --purge --yes linux-headers-6.5.0-14-generic linux-image-6.5.0-14-generic linux-modules-6.5.0-14-generic linux-modules-extra-6.5.0-14-generic
sudo apt install --reinstall --yes linux-headers-6.2.0-39-generic linux-image-6.2.0-39-generic linux-modules-6.2.0-39-generic linux-modules-extra-6.2.0-39-generic
sudo apt-mark hold linux-headers-6.2.0-39-generic linux-image-6.2.0-39-generic linux-modules-6.2.0-39-generic linux-modules-extra-6.2.0-39-generic

[上述操作似乎删除了最新的驱动程序,以防止系统启动到该驱动程序,重新安装工作内核并保留它,这意味着它不会被升级或删除]

当他们提出使用 Linux 内核 6.5 系列内核编译 NVidia Legacy 驱动程序的修复程序时,您可以通过代码取消固定内核来重新添加该内核系列:

sudo apt-mark unhold linux-headers-6.2.0-39-generic linux-image-6.2.0-39-generic linux-modules-6.2.0-39-generic linux-modules-extra-6.2.0-39-generic
sudo apt update && sudo apt upgrade

由于您已经处于工作内核,因此您的系统应该已经可以正常工作。无需重新启动计算机,并且您的系统将来会自动使用此工作内核启动。

我如何找到解决方案:

感谢@guiverc 帮助我弄清楚如何检查过去的升级。查看 /var/log/apt/history.log 中的文件

我知道我的系统在 1 月 5 日运行正常,但到了 1 月 11 日,它就无法正常工作了。查看 */history.log 文件,我可以看到几个可能存在问题的更改,但我关注的是这些更改:

Start-Date: 2024-01-10  22:16:46
Commandline: aptdaemon role='role-commit-packages' sender=':1.121'
Install: nvidia-firmware-535-535.146.02:amd64 (535.146.02-0ubuntu0.22.04.1, automatic), linux-modules-extra-6.5.0-14-generic:amd64 (6.5.0-14.14~22.04.1, automatic), linux-objects-nvidia-535-6.5.0-14-generic:amd64 (6.5.0-14.14~22.04.1+4, automatic), 
[...]
End-Date: 2024-01-10  22:18:49

我看到 Nvidia-firmware 告诉我内核/GPU 更改会导致我的问题。然后我开始搜索列出的版本,看看是否有任何问题在线报告。我不想包括文本部分 (nvidia-firmware*),因为我不确定是否有任何参考资料会包括它,但我确信会包括版本号。

535-535.146.02 没有返回任何有用的信息(我在搜索时没有包含全名,以免意外限制我的搜索)

但使用 6.5.0-14 进行搜索确实在 nvidia 论坛中找到了一篇帖子,该帖子指向邮政在 ubuntu 论坛上我找到了解决方法。

对于使用非旧版驱动程序的较新 GPU(不适用于我),用户 MAFoElffen 声称驱动程序是用 gcc-11 编译的,而实际上需要用 gcc-12 编译。他介绍了如何临时切换到 gcc-12 并重新安装 6.5 驱动程序,以及将默认编译器切换回 gcc-11 的步骤。

我学到的东西

/var/log/apt/history.log 文件对于故障排除非常有帮助。

暂时更改为较旧的内核是一个简单的步骤,可以查看问题是否与内核有关。

希望这对其他人有帮助。

相关内容