Collabora 公司的 Faith Ekstrand 最近一直在进行这方面的尝试,并取得了成功,使这个用于 Linux 的流行 Radeon Vulkan API 驱动程序能够在 Windows 下运行。
Faith 最近开启了一个 Mesa 合并请求,提供 Vulkan WDDM2(Windows 显示驱动程序模型 2.0)设备支持。重点是在 Windows 上启用 RADV — RADV 是 Valve 和其他开源社区支持的驱动程序,可以替代 AMD 的官方 AMDVLK 驱动程序。Faith 在这份仍未完成的合并请求中解释道:
“这是一个占位符 MR,用于保存我的 RADV 分支中的一些补丁,或许能引起一些讨论。与运行时中的所有内容一样,我一开始也是想采取一种轻松的方法。到目前为止,该分支只包含 WDDM2 设备枚举和对 WDDM2 监控围栏的新 vk_sync 类型的支持。
在设备枚举方面,我添加了一个 vk_wddm2_adapter_info 结构,该结构将使用从 WDDM 2.0 开始可用的一些常用查询来填充。这将为驱动程序提供 PCI 信息,以便它在实际克隆自己的句柄和执行任何其他查询之前快速剔除适配器。目前还不清楚我们在普通 Vulkan 代码中需要多少这样的信息,以及我们应该让驱动程序自己调用 D3DKMTQueryAdapterInfo()。目前,我采用了与 drmDevice 中大致相同的信息”。
当前形式的这些 Vulkan WDDM2 位只相当于 800 多行新代码。
随后,Ekstrand 在 Mastodon 上分享了在 Windows 下 RADV 驱动程序上运行的 Vulkan 代码示例。
干得漂亮!让我们拭目以待这项工作的进展和成果,以及 RADV 在 Windows 上相对于 AMD Radeon Software Vulkan 官方驱动程序的最终表现。
本文来自作者投稿,版权归原作者所有。如需转载,请注明出处:https://www.nxrte.com/zixun/50317.html