This repository records my learning process of CUDA kernel development, from naive implementations to optimized versions, with performance analysis using Nsight Compute (ncu).
- Implement common CUDA kernels from scratch
- Track naive → optimized evolution
- Analyze performance bottlenecks with ncu
- Build reproducible benchmarks and correctness checks
- Element-wise (vector add)
- Transpose
- Reduce
- MatMul
- Softmax
- RMSNorm
- Flash Attention