标签
详细剖析了NVIDIA GPU编程从Volta到Blackwell的演变,重点突出了从同步线程模型到异步数据流的转变以及喂饱张量核心的挑战。文章讨论了TMA、TMEM和tcgen05 MMA等新硬件特性,并展示了FlashAttention-3和FlashMLA等现代内核如何利用这些变化实现更高利用率。
本文通过一个简单的向量加法示例,详细介绍了CUDA内核从源代码到硬件执行的编译和启动全过程,并阐述了nvcc、PTX、SASS及ioctls的作用。
一条推荐阅读CUDA书籍最佳顺序的推文,从《CUDA by Example》开始建立直觉,然后再深入更高级的文本。
GPU Mode 是一个学习资源,包含YouTube系列、GitHub仓库(含幻灯片/笔记本)以及一个类似Leetcode的练习网站,用于掌握CUDA编程。
CMU机器学习系统课程的一本新书教授面向ML系统的现代GPU编程,涵盖Blackwell架构、GEMM和FlashAttention,使用TIRx Python DSL。
Modular宣布推出一个免费的4周Mojo课程,由Mojo团队授课,涵盖从语言基础到GPU编程,将于7月9日在YouTube上开始。
一条推文分享了一个使用共享内存归约的朴素CUDA softmax实现,并指出归约非常直接。
NVIDIA Labs发布了cuTile Rust,这是一个基于瓦片的系统,用于用地道的Rust编写内存安全、无数据竞争的GPU内核。它将Rust的所有权模型扩展到GPU内核,通过JIT将Rust的AST编译为GPU代码,并实现接近原生CUDA的性能。
一条推文讨论了两种agentic GPU内核优化系统:@dogacel0的Auto GPU Kernel和@songhan_mit实验室的Kernel Design Agents,两者均在MLSys Sparse Attention FlashInfer比赛中获胜。该帖子突出了使用子代理和Claude技能进行GPU编程的不同方法。
从 MSA 论文内核设计部分实现了 top-k 内核,使用免指数比较和通过 CUDA shuffle 进行的 warp 级树合并。代码已发布于 GitHub。
作者记录了学习GPU编程的进展,重点在于理解FlashAttention 2、3和4前向传播的高级区别,并列出了需要进一步探索的几个底层概念。
一个每日GPU编程帖子重点介绍了Charles_irl的演讲,该演讲在论文发布前逆向工程了FlashAttention4代码,并赞扬了Modal团队对代码的深入剖析和对前向传播的合理推断。
本文探讨了 OpenCL 和 SYCL 等 CUDA 替代方案的历史,解释了它们为何因缓慢的委员会驱动开发以及开放合作竞争的挑战而未能成为 AI 计算领域的主导力量。
Kazuki Fujii 宣布发布CUDA编程基础系列博客的第一篇,以通俗易懂的方式撰写,对于理解FlashAttention和硬件感知加速技术至关重要。
CUDA 13.3 引入了重大增强,包括 Tile C++ 支持、C++23 标准、改进的 NVRTC、稳定的 CUDA Python 1.0 API,以及 PTX 9.3 中的新 fabric 指令和异步多内存操作,主要面向内核开发者和运行时工程师。
GPU 术语表新增文章,涵盖 CuTe DSL、CUTLASS 和 CuTe——这些工具用于在数据中心 GPU 上编写高性能 GPU 内核,并附有 Python 示例。
一位学习者分享了对斯坦福大学CS336第7讲关于GPU并行性的热情,该讲座涵盖了基本操作,并将其连接到多GPU设置以及张量并行、数据并行和流水线并行等技术。
为 Elliot Arledge 所著的《CUDA for Deep Learning》一书做的推广帖子,提供第一章总结视频,讲解 GPU 性能、CUDA 编程模型,以及何时需要编写自定义 CUDA 内核。
一份精选的CUDA编程主要书籍列表,涵盖从入门到高级主题,包括C++和Python,重点提供适用于NVIDIA GPU并行计算的实用资源。
CUDA-oxide 是由 NVIDIA 开发的实验性 Rust 转 CUDA 编译器,支持使用地道的 Rust 编写安全的 GPU 核函数,可直接编译为 PTX,无需借助领域特定语言或外部绑定。