中国科学院机构知识库网格
Chinese Academy of Sciences Institutional Repositories Grid
MIC众核架构通信密集型函数的算法设计与性能优化研究

文献类型:学位论文

作者刘益群
学位类别博士
答辩日期2015-05-26
授予单位中国科学院研究生院
授予地点北京
导师张云泉 ; 杨超
关键词异构计算 Intel MIC众核架构 FFT HPCG HPGMG
学位专业计算机软件与理论
中文摘要

为了进一步提升超级计算机的计算能力,使用众核加速部件作为协处理器的混合异构方式逐渐成为新一代超级计算机体系结构的首选设计方案之一。Intel MIC架构是一种基于x86的高性能众核体系结构,配备了512位宽的向量化指令集和大量的计算核心,能提供高效的浮点计算能力和访存带宽。然而众多的并行线程和相对较少的片上cache资源,对应用程序的并行度和访存局部性提出了很高的要求。高性能计算领域的“七个小矮人”中的三种算法模型,快速傅里叶变换(FFT)、稀疏线性代数和结构化网格计算都是典型的通信密集型问题,它们在信号处理和求解偏微分方程等领域都有着广泛的应用。在众核以及异构的环境下对这些基本算法模型进行并行算法的重新设计和性能优化,不仅能检验硬件平台有效性,对科学和工程领域也具有重要的意义。

本文以优化3D FFTHPCGHPGMG为驱动,研究快速傅里叶变换、稀疏线性代数和基于结构化网格的stencil计算这三类问题在Intel MIC众核平台上进行并行算法设计和性能优化的方法,并探索在异构众核平台上并行算法设计的方法、经验和性能优化的关键技术。

 

  • 基于Intel MIC众核平台的3D FFT并行算法设计和优化。论文中从算法级、线程级和代码级三个层次对3D FFT进行了优化。首先,针对Intel MIC存储子系统特征,提出了基于维度分解和组合的两阶段3D FFT算法,利用cache分块技术,将算法中所需的内存访问次数限制在4N (N为数据规模)。其次,使用两层并行模型,对OpenMP线程进行分组,在线程组间进行任务划分,由线程组协作以共同完成一个子任务的计算,增强L2 cache中数据局部性的同时,保证了算法的并行度并且能够充分地利用众多的计算资源并高效地扩展。最终,基于该算法实现的3D FFTIntel Xeon Phi 7110P平台上,获得了最高136 Gflop/s的性能,达到了该平台上Intel MKL 商用数学库中FFT 性能的2.22倍。
  •   天河2号上CPU-MIC混合HPCG并行算法设计和优化。论文工作基于MPI+OpenMP+offload混合异构的编程方式,提出了异构节点内子任务划分、设备间负载均衡、异步计算和数据传输的设计和优化方案。在Intel MIC众核加速器上,对性能关键函数对称Gauss-Seidel (SymGS)使用不同的红黑排序和并行策略,并从工作集大小、所获得的并行度以及迭代收敛速度三个角度进行对比和分析,并选择性能最优的实现组合。优化的HPCG成功扩展到天河2号整机16,000个异构计算节点上,获得了623 Tflop/s的性能和81.2%的并行效率,帮助天河2号取得HPCG 排行榜第一。
  •   Intel MIC众核平台上HPGMG性能优化关键技术研究。首先评估了编译器自动向量化、内存对界和分块参数对性能的影响。其次通过分析F-cycleV-cycle的数据流,挖掘各数值核心之间融合的机会,如残差计算和限制算子、粗网格磨光操作和插值算子之间,并且将边界条件的应用融合到各数值核心中,以加强cache数据的重用。在并行化方面,主要通过混合使用两层并行模型对各MIC核心之间的负载均衡进行了优化。在Intel Xeon Phi 7110P平台上,优化后的HPGMG-FV性能最大达到了参考实现的1.61倍。

 

学科主题计算机软件 ; 软件理论
公开日期2015-06-29
源URL[http://ir.iscas.ac.cn/handle/311060/17141]  
专题软件研究所_并行计算实验室 _学位论文
推荐引用方式
GB/T 7714
刘益群. MIC众核架构通信密集型函数的算法设计与性能优化研究[D]. 北京. 中国科学院研究生院. 2015.

入库方式: OAI收割

来源:软件研究所

浏览0
下载0
收藏0
其他版本

除非特别说明,本系统中所有内容都受版权保护,并保留所有权利。