全程没开编辑器:AMD 副总裁仅用 Claude AI 生成 Python 代码,直接对话 Linux GPU 内核驱动

买玉网 2 0

3 月 8 日消息,AMD 企业副总裁 Anush Elangovan 上周发布了一个完全用 Python 编写的小型实验性 Radeon 驱动程序。据 Elangovan 本人证实,这些代码完全通过 Claude Code 所生成,他期间甚至一次都没打开过代码编辑器。

乍听之下,绝大部分用户可能自动脑补出一个足够劲爆的标题:AMD 资深高管只用 AI 写出了一个全新的 GPU 驱动?

虽然确实也很惊人,但实际情况并没有那么激进 —— 他这里所开发的驱动并非大家通常理解的驱动,本质上只是一个轻量级的驱动测试工具,设计用来直接与 AMD 的 Linux GPU 接口进行交互。

据 Phoronix 报道,现代 Radeon GPU 在 Linux 上通常运行在一个围绕 ROCm 打造的软件栈之上。应用程序与 ROCm 库通信,ROCm 库再与用户态的运行时对话,使最终命令流入内核 GPU 驱动。

而 Elangovan 的这个实验项目则绕过了这个栈的很大一部分。这段 Python 代码通过 /dev/kfd 和 /dev/dri/render*等设备节点直接与内核驱动通信。通过这种方式,它可以分配 GPU 内存、创建计算队列、提交命令包,以及同步 CPU 与 GPU 的工作。换句话说,它能够直达 AMD 计算接口最底层。

不过,这听起来可能还是要比实际情况夸张得多,因为 AMD 内核驱动(此处并未被 AI 代码替换)仍然完成了几乎所有繁重的工作。Python 层只是简单地构建命令包,并通过现有的内核 API 将它们发送出去。

这可能有点像用一台笔记本电脑临时作为汽车发动机的 MCU 控制器,它虽然不会被用作长期驾驶,但确实是一个非常实用的诊断工具。关键在于,这套新代码能够以一种非常可控的方式与 GPU 硬件进行交互,而无需中间那整套 ROCm 软件栈。

Elangovan 认为,这使得该项目对调试和实验非常有用。工程师可以借此隔离 ROCm 中的 Bug,或者测试特定的 GPU 功能,而无需编译庞大的 C++ 项目。据称,这个原型已经能够处理一些实际任务,包括命令队列创建、内存分配、计算调度包以及 CPU-GPU 时间线信号同步。

另一个能说明该项目用途的地方在于,Elangovan 所提交的发行说明提到了一种“为未来裸机 PCI(AM)后端设计的可插拔架构”。

这个说法听起来很前卫,AM 后端将绕过内核驱动,直接通过 PCI 与 GPU 通信。这种设置通常用于硬件启动、诊断或极低级别的测试环境,而非面向消费者的软件;绕过内核驱动会破坏所有依赖该驱动所提供功能(如多任务处理、虚拟 GPU 内存和 DRM)的特性。

听到这里,可能依然有人希望它最终能演变成一个真正能日常使用的 Radeon 驱动,但很抱歉,这种可能性微乎其微。生产级的 GPU 驱动是绝对的大项目,其中包含了着色器编译器、内存管理器、电源管理、安全层,以及对 Vulkan 和 OpenGL 等复杂 API 的支持,而这些内容在这个实验项目中都不存在。

Elangovan 这次展示的,其实是 AMD 的 Linux 内核接口足够开放和模块化,以至于人们可以用高级语言编写脚本来与之交互。除此之外,这同时也说明了他真的很喜欢用 Claude Code 写代码。


发表评论 (已有0条评论)

还木有评论哦,快来抢沙发吧~