皇上,还记得我吗?我就是1999年那个Linux伊甸园啊-----24小时滚动更新开源资讯,全年无休!

CLUDA 发布于 Mesa:在 NVIDIA CUDA 驱动 API 上实现了 Gallium3D API

嗯,这是一个周末的惊喜… Red Hat 工程师和 Rusticl 首席开发者 Karol Herbst 为 “CLUDA” 打开了 Mesa 合并请求,这是一个仅计算驱动的驱动程序,它在 NVIDIA CUDA 驱动 API 上实现了 Gallium3D API。哇。

Mesa 的 CLUDA 提案在 CUDA 驱动 API 之上实现了 Gallium3D API,并且足以应对像基于 Rust 的 OpenCL 的 Rusticl 这样的仅计算工作负载。至少到目前为止,OpenCL 是 CLUDA 的主要关注点。目前,CLUDA 至少是一个占位符名称。

CLUDA 发布于 Mesa:在 NVIDIA CUDA 驱动 API 上实现了 Gallium3D API

最近几天,Gallium-over-CUDA 进行了修改,并且已经在 NVIDIA CUDA 专有驱动上运行了 Mesa OpenCL。Karol Herbst 在本周末的 pull request 中解释说:

“有人在 XDC(是的,我就像上周一样,回家后获得了访问 Nvidia GPU 的权限,就开始了这个项目)告诉我,在 Mesa 上在 CUDA 上实现 OpenCL 可以帮助解决某个问题。我无法在这里详细讨论这个问题,但请放心,这并不是我的想法。无论如何,如果有人想使用 proprietary driver 运行 OpenCL,并且缺少一些对他们来说非常重要的 OpenCL 扩展,他们可能可以使用这个 OpenCL 实现呢?或者如果他们想的话,可以添加更多扩展?我真的不知道。无论如何,这是我针对 CUDA 的第一个项目,因此我也在这里学到了很多关于 CUDA 和 PTX 的知识。”

Interesting.   有趣。

这个 Mesa CLUDA 驱动针对 libcuda.so 中的 NVIDIA CUDA 驱动 API。CLUDA 涉及将 Mesa 的通用 NIR 降低到 NVIDIA PTX 以供消费,然后由 NVIDIA 的专有计算堆栈处理。至少到目前为止,测试已经在 NVIDIA RTX 40 / Ampere 硬件上进行。

性能对于这样一个年轻的项目来说非常好。在 CLUDA 驱动程序上使用 LuxMark,NVIDIA RTX A6000 的得分为 57,702,而使用专有的 NVIDIA 驱动程序堆栈的得分为 64,009。接近 NVIDIA 专有组件性能的 90%。Karol 估计,NIR 到 PTX 的转换会损失一些性能,以及其他差异。

CLUDA 发布于 Mesa:在 NVIDIA CUDA 驱动 API 上实现了 Gallium3D API

无论如何,那些想了解更多关于在 NVIDIA CUDA API 之上为 Mesa 的 Gallium API 实现“CLUDA”努力的人可以通过这个公开的合并请求了解更多。

转自  CLUDA Posted For Mesa: Gallium3D API Implemented Atop NVIDIA CUDA Driver API – Phoronix