NVIDIA 的 CUTLASS 4.0:通过全新 Python 接口提升 GPU 性能

realtime news   Jul 18, 2025 03:17  UTC 19:17

1 Min Read

NVIDIA 宣布发布 CUTLASS 4.0,这是一个重要更新,引入了面向 CUDA 库的 Python 接口,旨在优化深度学习 (DL) 和高性能计算 (HPC) 中的 GPU 性能。据 NVIDIA 称,此开发标志着 CUTLASS 演变新阶段,自 2017 年开始持续发展。

CUTLASS 3.x 的增强功能

上一版本 CUTLASS 3.x 引入了 CuTe,一个设计用于简化通过布局抽象来操作线程和数据的库。这种抽象允许更直观地组织线程和数据,提升了 Tensor Core 操作的性能。CuTe 的布局系统为开发者提供了一个清晰且可检查的索引逻辑,支持静态和动态信息表示。

CUTLASS 3.x 强调了定制化和组合性,允许开发者在保持与其他组件兼容的同时修改库中的任何层次。该版本还引入了编译时检查以确保内核的正确性,减少 API 表面积,降低学习曲线,并在 NVIDIA 的 Hopper H100 和 Blackwell B200 架构上优化性能。

CuTe 的布局和 Tensors

CuTe 的布局表示是其功能的基石,提供了一个支持复杂张量操作的分层系统。此系统使开发者能够构建超越传统行优先和列优先格式的复杂数据布局。CuTe 的布局代数允许程序员专注于算法逻辑,而库负责数据组织的机械方面。

CuTe 提供 LayoutTensor 对象,封装了数据的类型、形状、内存空间和布局,简化了索引过程。此抽象促进了密集线性代数算法的设计和实现,这在高性能 GPU 应用中至关重要。

CUTLASS 4.0 的进步

通过引入 CUTLASS 4.0,NVIDIA 扩展了其功能,通过集成 Python 接口,使 CuTe 的强大功能更广泛地被开发人员访问。此更新保留了 CUTLASS 3.x 的核心原则,同时增强了可用性和性能优化。

更新后的库继续利用 CuTe 在布局转换和分区方面的优势,实现跨 GPU 线程的高效数据管理。此功能对于在 DL 和 HPC 领域最大化 GPU 应用程序性能至关重要。

对 GPU 编程的影响

通过抽象张量布局和线程映射的复杂性,CUTLASS 使开发者能够编写更高效的 CUDA 代码。CuTe 提供的统一代数接口简化了高性能 GPU 应用程序的开发,确保开发者可以专注于算法创新,而不是低级实现细节。

NVIDIA 对 CUTLASS 的持续开发体现了其推动 GPU 技术进步的承诺,为开发者提供工具,以便在要求苛刻的计算任务中充分发挥现代 GPU 的潜力。



Read More