专栏内容
这一专栏讨论GPU相关的硬件架构和软件相关的内容;硬件架构部分讨论不同模块的设计;软件部分讨论编译,并行计算相关的算法以及一些渲染技术。
硬件架构
硬件架构会基于很多开源的模拟器比如GPGPU-sim, Multi2Sim, MGPUSim里面所阐述的架构和一些论文来讲述,还会有一些在这些开源里面没有涉及到的跟渲染相关的比如texture模块,tessellation模块, scan converter, depth buffer, color buffer等等。
软件部分
软件部分主要是对我所涉及过的工作进行的一些总结。
编译
编译部分会介绍GPU编译器back end里面的pass;以及每一步所做的工作。
并行计算
GPU并行计算有一本经典的书籍Programming Massively Parallel Processors;里面介绍了很多并行的pattern,比如reduce, prefix sum, histogram等等, 也介绍了GEMM的优化。这一部分除了这些基本的并行pattern之外,还会介绍其他的一些并行算法。
对于GEMM的优化开源的代码有NVIDIA的cutlass, AMD的composable kernel; 会分别介绍下两者。
渲染算法
渲染算法也推动了硬件架构的设计,所以这一部分会介绍一些经典的渲染算法。有一门课Games202,在此推荐给大家。