Transcript PPT下载
GPU加速软件Ultra-Mat介绍 贾伟乐,王龙,曹宗雁,高岩涛,付继芸,迟学斌,高卫国,汪林望 超级计算中心,复旦大学,劳伦斯伯克利国家实验室 中国科学院计算机网络信息中心 2013-11-15 Team members 大纲 异构架构-高性能软件的新机遇 CUDA编程模型简介 GPU异构平面波算法设计和优化 测试平台与结果 结论 超级计算机的发展--异构不可避免 超级计算机的发展--异构不可避免 三大挑战:空前的并行性、异构、软件革命 50Gflops/watt 单核计算能力:10年增长约50%! 平面波第一原理的应用现状 计算材料软件现状 平面波是最常用、最成熟的方法 成熟的软件众多,包括: VASP, CASTEP, CPMD, ABINIT, PWSCF, DACAPO, SOCORRO, DFT++, PARATEC, DODPW, CP2K, SPHINX, QBOX, PEtot CPU代码可扩展至千核 单步第一原理分子动力学模拟需要 1--2 分钟 计算材料软件面临的问题 相关工作 CPU并行方式已发展10-15年,已臻成熟 把CPU的并行模式用于异构架构并非最优 需要重新设计第一原理并行框架 CUDA:GPU异构编程模型 摩尔定律 GPU-图形处理器 传统的GPU架构 GPGPU G80架构 CUDA编程模型 CPU-GPU互动 CUDA实例程序 MPI+CUDA GPU异构平面波算法设计和优化 平面波赝势计算复杂 平面波方法计算流程图 快速傅立叶变换与矩阵矩阵乘并存 已发展成熟的CPU并行模式 K点并行 波函数索引并行 倒空间并行 矩阵相乘放入GPU 重新设计的GPU混合并行模式 对GPU而言: 传统模式对FFT数据过度划分; 通信时间远超计算时间; 仅有G空间并行难以解决问题----重新设计混合并行模式 CPU/GPU数据拷贝速度严重影响MPI+CUDA程序性能 消除CPU-GPU内存拷贝后的CG算法流程 数据压缩算法--压缩后的收敛精度 库函数 第一原理分子动力学GPU算法流程 测试系统和测试结果 测试系统 CG算法测试结果 step-by-step Optimization 单步分子动力学计算时间 1800步分子动力学模拟 结论 • • • • • Ultra-Mat单步第一原理分子动力学能在12s内完成,CPU 代码无出其右者 对CG算法达到最高30x加速比 重新设计GPU混合并行模式 设计实现了可应用于CG算法的数据压缩算法,减少了3/4 的波函数传输时间 最终,计算占比40%, MPI占比35%,CPU/GPU内存拷贝 10%,矩阵对角化15% Ultra-Mat目前的功能 • • • • CPU/GPU均能够运行,GPU代码有20x加速比 模守恒赝势和超软赝势 可以计算第一原理原子弛豫和分子动力学 2013年底发布第一版本代码 谢谢! [email protected]