GPU 编程
1. 概述
本章节构建了从基础 CUDA 编程到前沿 Tile-Based 优化的完整知识体系,旨在帮助开发者掌握高性能计算的核心编程范式。
2. 环境准备
工欲善其事,必先利其器。在开始 GPU 编程之前,首先需要构建一个标准化的容器开发环境。
- NVIDIA GPU 容器环境:原理与构建指南 - 深入解析容器化架构原理,提供从驱动安装到实战配置的完整手册。
- 大模型训练与推理框架的 GPU 镜像构建深度解析 - 剖析 vLLM、TGI、Llama.cpp、DeepSpeed 四大框架的 Dockerfile,详解 CUDA 镜像变体选择与构建优化策略。
3. 核心编程范式
本章介绍 GPU 编程的两种主要范式:传统的基于线程的 SIMT 模型,以及面向现代张量核心的基于数据块的模型。
3.1 CUDA 编程基础
NVIDIA 官方标准的并行计算架构与编程模型,是 GPU 编程的基石。
-
核心概念:CUDA 核心原理 流处理机制 -
概念解析:GPU 编程导论 SIMT 到 Tile-Based 编程范式的演进
3.2 Tile-Based 编程与 TileLang
针对现代硬件(如 Tensor Core)优化的更高级编程模型,以数据块(Tile)为中心。
4. 性能分析与优化
性能调优是 GPU 编程中不可或缺的一环,本章提供相关的性能测试与分析工具指南。
- nvbandwidth 最佳实践 - 深入了解和测量 GPU 的显存带宽与 PCIe 传输带宽。
5. 学习资源库
本章汇总了 GPU 编程相关的内外部学习资料,供不同阶段的开发者参考。
5.1 快速入门
5.2 进阶实战
面向专业开发者的深度优化指南。
- CUDA-Learn-Notes - 涵盖 200+ 个 Tensor Core/CUDA Core 极致优化内核示例 (HGEMM, FA2 via MMA and CuTe)。
5.3 参考资料大全
我们整理了从官方文档到社区精选的完整学习路径。
书籍与文档:
- 《CUDA C++ Programming Guide》 - NVIDIA 官方权威指南
- 《CUDA C 编程权威指南》 - 经典教材 (Professional CUDA C Programming)
- 《CUDA 编程:基础与实践 by 樊哲勇》 - 中文经典实战教程
- 《CUDA 编程简介: 基础与实践 by 李瑜》
- 《CUDA 编程入门》 - 改编自北京大学超算队 CUDA 教程讲义
代码仓库与示例:
- Nvidia 官方 CUDA 示例 - 官方标准范例库
- 书中示例代码 (Professional CUDA C)
- 学习笔记 (CudaSteps)
- 示例代码 (CUDA_Programming)
- Multi GPU Programming Models - 多卡编程模型示例
社区与讲座: