@gpuwaster: GPU Grind 第61/100篇:正在学习这场GTC 2020讲座:开发CUDA内核将Tensor Core推向绝对极限…
摘要
作者在其共100部分的GPU学习系列中,回顾了Andrew Kerr在GTC 2020上的一场讲座,内容是关于开发高性能CUDA内核以将NVIDIA A100的Tensor Core性能推向极致,探讨了相关技术以及原生CUDA与CUTLASS之间的取舍。
查看缓存全文
缓存时间: 2026/07/12 10:53
61/100 的 GPU 磨炼
正在观看 GTC 2020 的讲座:开发 CUDA 内核,将 NVIDIA A100 上的 Tensor Core 推向极限
这个标题确实很有意思,因为正好是我正在做的事。这是 CUTLASS 团队 Andrew Kerr 的演讲,回顾了在 Ampere 上优化 GEMM 的策略,解释了 mma 指令、ldmatrix 指令和 cp.async 的工作原理,以及构建良好内存流水线所需的要素。
开始看视频时,我本在寻找新技巧,但发现都是我已经在做的事情(不过他们可能做得更好,尤其是在交错排列部分)。
我从中学到的主要结论是:用 cutlass 编写这样的内核会轻松得多……这大概也是讲座的目的吧——毕竟是 cutlass 团队的演讲,但我感觉如果不用原生 CUDA 来做,我学到的东西就没那么多。我这是在自讨苦吃吗?
链接:https://developer.nvidia.com/gtc/2020/video/s21745-vid…
GTC 2020:开发 CUDA 内核,将 NVIDIA A100 上的 Tensor Core 推向极限
来源:https://developer.nvidia.com/gtc/2020/video/s21745-vid
点击“立即观看”后,系统会提示您登录或加入。
立即观看 (https://developer.nvidia.com/gtc/2020/video/s21745)
GTC 2020:开发 CUDA 内核,将 NVIDIA A100 上的 Tensor Core 推向极限 (https://developer.nvidia.com/gtc/2020/video/s21745) 点击“立即观看”以登录或加入 NVIDIA 开发者计划。
立即观看 (https://developer.nvidia.com/gtc/2020/video/s21745)
开发 CUDA 内核,将 NVIDIA A100 上的 Tensor Core 推向极限
Andrew Kerr,NVIDIA
GTC 2020
NVIDIA Ampere GPU 架构通过将 Tensor Core 的混合精度数学吞吐量翻倍来提升性能,同时还增加了对双精度、Tensor Float 32 和 bfloat16 数据类型的支持。我们将介绍如何使用 A100 上的 Tensor Core 实现高性能 CUDA 内核,应用寄存器分块、软件流水线和精心构建的内存布局以避免存储体冲突等技术。然后,我们将介绍 CUTLASS 中用于编程 Tensor Core 的抽象以及其他新特性。本讲座面向高级 CUDA C++ 程序员,他们渴望编写将 Tensor Core 推向峰值性能的内核。我们建议您先回顾以往关于该主题的演讲,例如 CUTLASS 简介(GTC 2018)和 CUTLASS 中的 Volta Tensor Core 编程(GTC 2019)。
查看更多 GTC 2020 内容 (https://developer.nvidia.com/events/recordings/gtc-d-2020)
thom✨ (@gpuwaster): 60/100 的 GPU 磨炼
正在学习斯坦福 cs149 课程的第 4 讲,内容涵盖并行程序创建的基础知识,从阿姆达尔定律、问题分解为任务(由程序员完成)、任务分配(通常由编译器完成),以及 ISPC 中如何实现这些。
相似文章
@levidiamode: 183/365 GPU编程 - 由@bfspector (TK合作作者, 斯坦福博士生)讲授的4.5小时CUDA + ThunderKittens课程…
强烈推荐,由Ben Spector讲授的4.5小时GPU编程课程,深入介绍CUDA和ThunderKittens,提供内核优化的幕后视角。
GPU Kernel Engineering
一个共44节课的免费「GPU Kernel Engineering」系列课程发布,从CPU并行计算与CUDA基础出发,逐步深入内存优化、GEMM、Tensor Cores、Flash Attention,直至H100/Blackwell等前沿硬件与AI编写的kernel。
@levidiamode: Day 138/365 of GPU Programming 今年我最喜欢的讲座之一是斯坦福大学的CS336第7讲关于GPU…
一位学习者分享了对斯坦福大学CS336第7讲关于GPU并行性的热情,该讲座涵盖了基本操作,并将其连接到多GPU设置以及张量并行、数据并行和流水线并行等技术。
搭建 GPU 内核开发环境的实用笔记:CUDA 13 的 GPU 支持界限、异步计时陷阱、性能分析器计数器权限 [P]
GPU 内核工程系列课程第 1 讲的实用笔记,涵盖 CUDA 13 对 GPU 计算能力的最低要求、驱动程序/工具包/PyTorch 运行时之间的区别、异步 GPU 计时的常见陷阱,以及如何修复 Nsight Compute 的 ERR_NVGPUCTRPERM 性能分析计数器权限错误。
@ZhihuFrontier:GPU编程因张量核心速度太快无法喂饱而改变。知乎作者THU-PACMAN实验室分享了一个精辟的剖析…
详细剖析了NVIDIA GPU编程从Volta到Blackwell的演变,重点突出了从同步线程模型到异步数据流的转变以及喂饱张量核心的挑战。文章讨论了TMA、TMEM和tcgen05 MMA等新硬件特性,并展示了FlashAttention-3和FlashMLA等现代内核如何利用这些变化实现更高利用率。