我刚买了一台 AMD Radeon RX 7900 XT,现在我很想使用它。问题是,我研究了我可能需要的驱动程序,并意识到它amdgpu
已经与内核捆绑在一起。安装 GPU 并运行后sudo lspci -v
,以下信息(以下为重要摘录):
03:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Navi 31 [Radeon RX 7900 XT/7900 XTX] (rev cc) (prog-if 00 [VGA controller])
Subsystem: Advanced Micro Devices, Inc. [AMD/ATI] Device 1002
Flags: bus master, fast devsel, latency 0, IRQ 197
Memory at 4800000000 (64-bit, prefetchable) [size=32G]
Memory at 4400000000 (64-bit, prefetchable) [size=2M]
I/O ports at 5000 [size=256]
Memory at 85500000 (32-bit, non-prefetchable) [size=1M]
Expansion ROM at 85600000 [disabled] [size=128K]
Capabilities: [48] Vendor Specific Information: Len=08 <?>
Capabilities: [50] Power Management version 3
Capabilities: [64] Express Legacy Endpoint, MSI 00
Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
Capabilities: [150] Advanced Error Reporting
Capabilities: [200] Physical Resizable BAR
Capabilities: [240] Power Budgeting <?>
Capabilities: [270] Secondary PCI Express
Capabilities: [2a0] Access Control Services
Capabilities: [2d0] Process Address Space ID (PASID)
Capabilities: [320] Latency Tolerance Reporting
Capabilities: [410] Physical Layer 16.0 GT/s <?>
Capabilities: [450] Lane Margining at the Receiver <?>
Kernel driver in use: amdgpu
Kernel modules: amdgpu
显然它已被检测到,并且已加载正确的驱动程序(amdgpu - 没有比这更详细的描述了)
然而各种问题也随之出现。
首先,任何内置硬件加速支持的应用程序(即所有基于 Chromium 的程序,包括所有 Electron 程序和 Blender)都会使整个 KDE Plasma 崩溃。它会在一秒钟左右的时间内重新启动,所有程序都会关闭 - 这通常意味着kwin_wayland
崩溃,并关闭它启动的所有进程 - 包括 Plasma,而且由于 Plasma 会启动所有应用程序,因此也会关闭这些应用程序。
其次,使用 AMD 文档另外安装 AMDGPU 驱动程序后,还会出现其他各种问题:
kwin_wayland
以及plasmashell
其他一些进程占用了我 75% 以上的 CPU每个(考虑到我的处理器容量巨大(Core i9 13900),这令人担忧。整个外壳会下降到 2-3FPS 左右Blender 和 Chromium 都无法检测到我的 GPU,因此附加驱动程序实际上毫无意义
就在写这个问题之前,我的系统根本无法启动。(没有启动画面,没有 BIOS 选项或任何东西。我的显示器上的背光亮起,但仅此而已)。
- 我必须物理断开 GPU,启动,卸载驱动程序,重新安装卡并重新启动(不用担心,我在各种硬件修改程序之间关闭并断开电源)。系统现在可以启动,但 GPU 服务器在当前状态下几乎没有用处。
我应该说的是,GPU 从未出现任何明显的物理损坏。风扇旋转得非常快,显卡也像预期的那样变热。
第一次插入卡时,启动屏幕显示错误,提示 GPU 初始化失败,该错误在第一次安装后amdgpu
消失。
以下是(希望)所有可能与你们有关的建议相关的信息
- 如何让我的系统识别我的 GPU
- 为什么 Plasma (kwin) 在 Wayland 模式下会消耗这么多 CPU(XOrg 运行正常,但由于各种原因对我来说不够用)
- 如何在无需打开 Blender 并进行基准测试等的情况下测试我的 GPU 是否已安装并正常工作?
Operating System: KDE neon 5.27
KDE Plasma Version: 5.27.8
KDE Frameworks Version: 5.110.0
Qt Version: 5.15.10
Kernel Version: 6.2.0-33-generic (64-bit)
Graphics Platform: Wayland
Processors: 32 × 13th Gen Intel® Core™ i9-13900
Memory: 31,1 GiB of RAM
Graphics Processor: Mesa Intel® Graphics
Manufacturer: ASUS
编辑:提供glxinfo | grep OpenGL
OpenGL vendor string: Intel
OpenGL renderer string: Mesa Intel(R) Graphics (RPL-S)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 23.0.4-0ubuntu1~22.04.1
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.6 (Compatibility Profile) Mesa 23.0.4-0ubuntu1~22.04.1
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 23.0.4-0ubuntu1~22.04.1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
提供DRI_PRIME=1 glxinfo | grep OpenGL
OpenGL vendor string: AMD
OpenGL renderer string: AMD Radeon RX 7900 XT (gfx1100, LLVM 15.0.7, DRM 3.49, 6.2.0-33-generic)
OpenGL core profile version string: 4.6 (Core Profile) Mesa 23.0.4-0ubuntu1~22.04.1
OpenGL core profile shading language version string: 4.60
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile
OpenGL core profile extensions:
OpenGL version string: 4.6 (Compatibility Profile) Mesa 23.0.4-0ubuntu1~22.04.1
OpenGL shading language version string: 4.60
OpenGL context flags: (none)
OpenGL profile mask: compatibility profile
OpenGL extensions:
OpenGL ES profile version string: OpenGL ES 3.2 Mesa 23.0.4-0ubuntu1~22.04.1
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20
OpenGL ES profile extensions:
答案1
您的 AMD GPU 使用环境变量正确激活DRI_PRIME=1
。因此,您可以使用以下命令模板让您的程序在独立 GPU 上运行:DRI_PRIME=1 blender
。
AMD 的驱动程序不需要安装,因为amdgpu
它已集成到内核中。
高 CPU 使用率可能是由 KDE 本身的错误引起的。
答案2
因此,多亏了各位的帮助(@RA - 看着你呢,伙计),我才能够更接近这个问题。我现在回到了 Wayland 模式,所有程序都可以检测到 GPU 并顺利运行。
谢谢这篇文章和其他几篇文章,结果发现我没有检查的一件事是我是否遇到了权限问题。运行 Blender undo sudo 会在选项菜单中显示 GPU。
快速解决方法是将用户添加到video
和render
组。
这不是我想到的解决方案,但它确实有效,而且不太具侵入性。希望这对其他人有所帮助