Documentation Portal

HPC AI Optimization Lab

面向 AI 工作负载的 CUDA kernel 实验室。七个功能模块覆盖 elementwise、归约、GEMM、 卷积、attention、量化与 CUDA 13 实验特性,配套 C++/Python API 参考和五篇核心优化专题。

快速数据

7功能模块
5优化专题
2API 文档

CUDA 12.4+ · CMake 3.24+ · C++20 · nanobind Python 绑定

Overview

文档入口

选择你想开始的方向。API 参考由构建系统自动生成,专题文档按学习阶段组织。

Modules

七个功能模块

每个模块聚焦一类 CUDA 优化场景,从最基本的 elementwise 到前沿的 CUDA 13 实验路径。

Roadmap

学习路线

三个阶段,从访存基础到前沿架构特性。

初学者 · 1-2 周

打好访存与归约基础

  • 访存优化 → 合并访问、向量化、shared memory
  • 归约优化 → block 级归约、warp shuffle
  • GEMM Step 1-4 → naive 到 shared memory tiling
进阶 · 2-4 周

Tensor Core 与 Attention

  • GEMM Step 5-7 → Tensor Core、寄存器阻塞
  • FlashAttention → IO-aware 设计、在线 softmax
专家 · 持续

前沿与源码深入

  • CUDA 13 → TMA、Cluster、FP8(当前实验性)
  • CUTLASS 源码精读
  • 跟踪最新论文与工具链变化
Quick Reference

常用优化技术速查

优化技术与预期提升

合并访问        所有 Kernel      2-10x
向量化 (float4)  Elementwise      1.5-2x
Shared Memory   数据复用          2-5x
Warp Shuffle    归约操作          5-10x
Tensor Core     矩阵乘法         10-20x
TMA             大块数据搬运      1.5-2x

性能分析命令

# Nsight Compute - Kernel 分析
ncu --set full -o profile ./your_app

# Nsight Systems - 系统级分析
nsys profile -o timeline ./your_app

# Roofline 模型
ncu --set roofline -o roofline ./your_app

构建项目

# C++/CUDA
cmake -S . -B build -DCMAKE_BUILD_TYPE=Release
cmake --build build -j$(nproc)
ctest --test-dir build --output-on-failure

# Python 绑定
cmake -S . -B build -DBUILD_PYTHON_BINDINGS=ON
cmake --build build
export PYTHONPATH="$(pwd)/build/python:$PYTHONPATH"

Python API 示例

import torch
import hpc_ai_opt

x = torch.randn(1024, 1024, device="cuda")
y = torch.empty_like(x)

hpc_ai_opt.elementwise.relu(x, y)