Mini Projects
Each mini project has a clear set of goals. Explore and understand different concepts practically while working towards achieving those goals.
xGeMM
Goal: Code matrix multiplication from scratch and (try to) match the performance of cuBLAS SGeMM.
Content Index
- Why care about matrix multiplication?
- What is SGeMM?
- Naive matrix multiplication on a GPU.
- Matrix multiplication on a GPU with coalesced memory accesses.
- Matrix multiplication on a GPU using shared memory.
- Matrix multiplication on a GPU using registers.
- Matrix multiplication on a GPU using even more registers.
- Matrix multiplication on a GPU with vectorized memory accesses.