Blumenkrantz优化Mesa Vulkan提交合并一些测试用例提高了1000%+

2023年 9月 24日 51.9k 0

Mike Blumenkrantz
Valve一流的Linux图形驱动程序团队
,实现了另一项令人印象深刻的壮举,即进一步优化Mesa Vulkan驱动程序代码,使多个驱动程序/硬件供应商受益。

Blumenkrantz最近开始探索Mesa对Vulkan排队的处理方式,以及它是如何变得相当缓慢的。他最终分析的是Vulkan API如何允许同时执行一系列命令缓冲区提交,尽管Mesa当前的vkQueueSubmit处理将分批提交拆分,并仍然单独提交每个提交,而不是同时提交整个提交阵列。反过来,这种当前的单独提交方式意味着增加了开销,也增加了内存分配开销。

通过重新编写Vulkan队列提交代码,添加线程等待,并在可能的情况下合并队列提交以减少同步开销,这是一个巨大的效率优势。更令人兴奋的是,这发生在Mesa的通用Vulkan运行时代码中,而不是特定于驱动程序的代码。

随着一些vkOverhead基准测试案例中悬而未决的改进,RDNA3 GPU上的RADV驱动程序提交命令的速度可以提高约1000%,Lavapipe软件驱动程序在某些情况下提高了1000~3000%,带有Arc Graphics(DG2)的Intel ANV Vulkan驱动程序的速度提高了5000%,高通Adreno TURNIP驱动程序的得分也提高了约3000~4000%。

用于优化Vulkan Mesa驱动程序提交合并的代码现在正在通过
这位梅萨MR
。有关Blumenkrantz不懈优化工作的更多详细信息,请访问
此博客文章
.

相关文章

塑造我成为 CTO 之路的“秘诀”
“人工智能教母”的公司估值达 10 亿美金
教授吐槽:985 高校成高级蓝翔!研究生基本废了,只为房子、票子……
Windows 蓝屏中断提醒开发者:Rust 比 C/C++ 更好
Claude 3.5 Sonnet 在伽利略幻觉指数中名列前茅
上海新增 11 款已完成登记生成式 AI 服务

发布评论