高性能计算工程师、科学计算应用开发人员、数值算法研究人员。
掌握典型科学计算算法(稀疏线性代数、FFT、粒子模拟)的 GPU 实现方法。
理解 GPU 上的数值精度与收敛性要求。
能够针对大规模科学计算问题进行算法设计与性能优化。
GPU 高性能计算概述:高性能计算的应用领域(分子动力学、计算流体力学、天气预报);GPU 在 TOP500 中的地位;混合精度计算与数值稳定性。
稀疏线性代数:稀疏矩阵存储格式(CSR、CSC、COO);稀疏矩阵向量乘(SpMV)的 GPU 实现;迭代求解器(共轭梯度法、GMRES)的 GPU 加速。
密集线性代数:矩阵分块算法;cuBLAS 与 cuSOLVER 库的高级应用;LU 分解、QR 分解的 GPU 实现。
快速傅里叶变换:FFT 算法的并行化;cuFFT 库的使用与性能调优;批处理 FFT 在信号处理中的应用。
粒子模拟:N 体问题的 GPU 实现;粒子对相互作用的计算优化;邻域列表算法;分子动力学模拟(如 Amber、GROMACS)的 GPU 加速原理。
格点计算:计算流体力学中的网格计算;有限差分法的 GPU 实现;GPU 上的 Stencil 计算优化(共享内存、寄存器重载)。
蒙特卡洛模拟:随机数生成在 GPU 上的实现(cuRAND);并行蒙特卡洛方法的应用;方差减少技术的 GPU 实现。
数值精度与混合精度:单精度 vs 双精度的性能差异;混合精度算法设计;误差分析与补偿技术。
多 GPU 编程:多 GPU 任务的划分;节点内多 GPU 通信(NVLink);跨节点 GPU 通信(MPI+CUDA)。
CUDA 感知的 MPI:GPU 直接通信的原理;MPI 与 CUDA 的集成;GPUDirect RDMA 技术。
应用案例:分子动力学模拟的 GPU 优化实践;计算流体力学求解器的 GPU 移植经验。
综合实战项目:将经典的科学计算应用(如有限差分求解热方程)移植到 GPU,并进行多 GPU 扩展与性能分析。