2026 年 9 月 30 日的多伦多 XDC 大会上,Valve 的 Linux 图形驱动团队发布了针对旧架构的驱动更新报告。从 Linux 6.19 内核开始,2012 年发布的 Radeon HD 7000 系列等 GCN 1.0/1.1 架构显卡,从 legacy Radeon 驱动迁移至 AMDGPU 驱动。
图:Timur Kristóf 在 XDC 2026 大会讲解内核驱动开发。来源:Phoronix
迁入 AMDGPU 栈,让这些旧硬件获得了开箱即用的 RADV Vulkan 支持,并在测试中获得了约 30% 的性能提升。旧硬件的持续支持,主要归功于开发者对代码问题的修复。
替原厂补齐底层代码残缺
将旧架构迁移到新的代码栈,需要解决多项代码问题。以 GCN 1.0 “Southern Islands” 和 GCN 1.1 “Sea Islands” 为代表的旧架构,已经在市场上流通了十余年。在过去多年里,AMD 并没有在这些显卡的驱动重构上投入核心资源,导致它们在使用 legacy Radeon 内核模块。
图:2012 年发布的 Radeon HD 7950 显卡,此次驱动重构的目标硬件之一。来源:Phoronix
虽然 AMDGPU 框架早已在较新的显卡上普及,但旧硬件的用户此前只能通过添加特殊的内核模块参数,手动切换到这个驱动分支。这种手动切换伴随着较高的系统不稳定性,部分基础硬件特性在代码层面存在缺失。Valve 工程师 Timur Kristóf 在补齐 display 显示代码缺失、修复复杂的电源管理逻辑,并追加 soft reset 软重置支持后,在功能层面缩小了差距。Valve 的工程师修复了这些向下兼容的问题。
一次内核搬家榨出 30% 性能
当代码在特性层面完成转换后,AMD 方面同意更改 Linux 内核中的默认驱动配置。从 legacy Radeon 剥离并接入 AMDGPU 体系后,这批显卡在新环境里获得了性能提升。
图:Phoronix 对 Linux 6.19 中 AMDGPU 驱动带来的性能提升进行实测。来源:Phoronix
根据 Phoronix 的测试数据,驱动栈的切换为 GCN 1.0/1.1 硬件带来了约 30% 的性能提升。摆脱疏于维护的 legacy 驱动,是释放旧架构底层性能的路径。更新的软件框架有助于提升旧架构的计算能力。底层的代码迁移,让旧硬件能够使用现代 Vulkan API,为系统带来了性能提升。
强行接入现代游戏图形生态
这种性能提升的原因在于 AMDGPU 对 RADV Vulkan 驱动的支持。对于现代 Linux 游戏生态而言,Vulkan 支持是通过 Proton 运行 Windows 游戏的核心需求。
沿用 legacy Radeon 驱动意味着只能使用陈旧的 OpenGL 渲染路径,或者面临图形 API 支持缺失。当底层代码更新后,Radeon HD 7800/7900 这批显卡可以直接接入现有的 Mesa 3D 代码库,利用开源图形团队针对 Vulkan 做的性能优化。将渲染管线交由现代规范处理,改善了这批硬件在现代工作负载下的表现。
穿透用户态与内核态代码层
这场重构展示了跨层级的工程实践。Timur Kristóf 此前多年在用户态的 Mesa 3D 驱动代码领域工作,这次重构最初是他参与内核态 AMDGPU 驱动开发的一个项目。
内核态的代码修改需要处理硬件寄存器的读写控制和电源状态机。当开发者熟悉了用户态 Vulkan 调用的具体需求,就能在内核态的调度和资源分配上做出适配。开发者结合用户态和内核态经验,完成了相关的驱动适配。
发行版生态重塑老硬件寿命
依靠社区和第三方开发者维护旧硬件的模式,成为部分用户的选择。技术社区讨论指出,在 Linux 环境下,旧的中端硬件具有一定的工程价值。
老硬件积累的驱动问题大多已被修复,相关的修复补丁也已随发行版下发至终端,用户可以获得稳定的图形环境。相比之下,新硬件发布后通常还需要经历数周甚至数月的内核适配期,在部分高级特性的支持上与专有驱动环境存在落差。
十年前的 GCN 架构能在今天获得 Vulkan 支持并合并主线,说明旧架构也能接入新的软件栈。当有开发者修复旧代码时,旧设备可以继续运行现代软件。这是 Valve 为旧设备提供底层代码支持的工程实践。
参考链接:
- XDC 2026: Valve’s Timur On Moving Old AMD GPUs To AMDGPU
- Linux 6.19’s Significant ~30% Performance Boost For Old AMD Radeon GPUs
- Kernel driver dev using old AMD GPUs (PDF)