AMD 公司早在去年就正式发布了 Radeon R9-285 显卡。然而,相关的开源 Linux 驱动却迟迟没有推出。经过近一年的等待, AMD 在 4 月 20 日宣布推出最新的 AMDGPU Linux 内核驱动。
AMDGPU 内核驱动支持最新的 Radeon R9 285 显卡、即将推出的 GPU 和 Carrizo 等 APU。根据 Alex Deucher 在 XDC2014 大会宣布的统一化GPU 驱动架构,AMD 公司将AMDGPU 代码中的开源模块及闭源模块统一成单一的开源内核模块。这些驱动使用相同的DRM library ioctl wrapper (libdrm) 和DDX(X.Org) 驱动。其中,闭源驱动限制智能用户态工作,主要负责处理OpenGL、OpenCL/compute 等,并与开源堆栈沟通交换信息。
除了新的AMDGPU 内核驱动,新的xf86-video-amdgpu DDX 驱动也被一并推出,用来支持新的DRM/KMS 组件上的X.Org 服务器。libdrm 代码经过更新,命名为libdrm_amdgpu。至于Mesa/Gallium3D 驱动方面,Volcanic Island 硬件支持仍然内置在RadeonSI/Gallium3D 驱动内,该驱动支持Radeon HD 7000 系列以及更新的GPU。新的AMDGPU winsys 被添加到Gallium3D,但是实际的驱动程序为经过明显修改的RadeonSI,用来支持最新的AMD 硬件。此外,新的AMDGPU 栈依赖LLVM 3.6 或者更新,但是LLVM3.7 SVN 能够使得性能最大化。
据 Phoronix.com 网站的作者 Michael Larabel 表示,新的驱动在 VI 和 Carrizo 方面所支持的内容包括 OpenGL 3.3、利用带 Gallium3D VDPAU 状态追踪器的 UVD 模块实现的视频解码和利用 VCE 引擎的视频编码。新的驱动模式适用的是 Tonga 以及未来一代的 AMD GPU 产品。但是,现在的 Radeon GPU 用户仍然可以使用目前的 Radeon DRM 驱动。AMD 公司会在未来一段时间继续维护这些驱动程序。
目前,AMDGPU 内核驱动程序已经可以通过 Alex Deucher 创建的 Git 分支来获得。驱动程序所支持的内核版本为 Linux 4.2. 新的 xf86-video-amdgpu 驱动也可以下载相应的压缩包。此外, Mesa 的更新和 libdrm 的更新需要单独通过 freedesktop 网站进行下载。 AMD 公司的 Alex Deucher 表示,当前的 AMDGPU 代码还缺乏对 Tonga GPU 的功耗管理等。未来,AMD 会很快解决代码中存在的这些问题。
感谢魏星对本文的审校。
给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ , @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。
评论