面向高密度计算的多核处理器结构研究

面向高密度计算的多核处理器结构研究

论文摘要

人类对计算能力的需求不但推动着高性能计算技术的不断发展,还推动着微处理器技术的发展。当前的超级计算机中普遍使用了高性能的微处理器,因此微处理器的性能对超级计算机和高性能计算有着至关重要的作用。在高性能计算中有一大类应用是计算和访存密集型的应用,如科学和工程计算,数值模拟和信号处理等。如何对多核处理器上此类应用程序进行性能分析和结构优化,一直是众多科研工作者的研究重点。依托国产高性能多核通用处理器研制项目,本文面向高密度计算类应用,对通用处理器性能分析方法、结构优化以及高密度计算性能优化等问题进行了深入的探讨和研究。本文的主要工作和创新如下:1.一种用于指导处理器结构优化的性能建模及分析方法现有的性能分析通常基于仿真拟合或宏观建模的方法,难以具体地刻画结构参数对性能的影响,对处理器结构优化的指导作用有限。为了深刻地揭示处理器结构参数与矩阵乘法性能的关系,本文通过分析矩阵乘法计算/访存行为,结合处理器结构特点,建立了单核和多核通用处理器上的矩阵乘法性能模型。在此基础上,给出了矩阵乘法最优性能下处理器结构参数应满足的必要条件,包括寄存器个数和访存带宽的理论下界。以Intel Core i7和Godson-3A两种典型的通用处理器为验证平台对性能模型进行了验证,实验结果表明,在四核矩阵乘法中,该模型的准确度分别达到90%和86%以上。本文提出的性能模型,可用于分析处理器在计算和访存中的瓶颈,并可用于指导处理器的优化设计。2.一种乘加shuffle融合的浮点向量指令根据本文提出的性能模型,对基于向量扩展处理器的应用程序进行了性能分析。分析表明,在设计基于向量扩展处理器的应用程序时,需要大量的数据shuffle指令来配合向量运算指令,严重地影响了程序性能。为此,本文提出一种新的向量指令,具有向量乘加指令和shuffle指令的功能,使用该指令可以完全消除shuffle指令,减少33%以上的程序长度,与使用shuffle指令的普通向量扩展处理器相比,核心程序性能提高33%以上,并且降低了功耗开销。3.一种新的计算/访存分离的处理器结构为了满足高密度计算应用的要求,本文基于性能模型,针对访存瓶颈提出了一种新的计算/访存分离的处理器结构。本文借鉴了传统计算/访存分离结构的思想,在多核通用处理器存储结构的基础上,增加了一个访存协处理器。当进行高密度计算时,由访存协处理器负责在寄存器和L2 cache/内存之间、L2 cache和内存之间传输数据,或对数据进行预取。访存协处理器的使用能够有效隐藏访存延迟,提高访存带宽,与Godson-3A相比,访存带宽提高了一倍。4.基于Godson-3B处理器结构实现了高效的矩阵乘法在优化的龙芯处理器结构上,为了获得高效的矩阵乘法,本文针对矩阵乘法中A、B和C三个矩阵各自的访存特点,采用不同的方法对其访存行为进行优化,并使用访存协处理器对数据进行预取,隐藏访存时间。优化后的矩阵乘法性能比Godson-3A提高了10倍以上,达到119.0Gflops,效率为93.0%;性能/功耗比为2.98Gflops/W,优于当前主流处理器。

论文目录

  • 摘要
  • ABSTRACT
  • 目录
  • 图目录
  • 表目录
  • 第1章 绪论
  • 1.1 研究背景
  • 1.1.1 微处理器在高性能计算中的应用
  • 1.1.2 微处理器发展现状
  • 1.2 本文研究的问题及意义
  • 1.3 国内外研究现状
  • 1.4 本文研究内容及论文组织
  • 第2章 面向高密度计算的相关研究工作
  • 2.1 几种面向高密度计算的处理器结构
  • 2.1.1 Cell处理器
  • 2.1.2 TRIPS处理器
  • 2.1.3 Intel core i7处理器
  • 2.1.4 GPU处理器结构
  • 2.1.5 Godson-3号处理器
  • 2.1.6 计算/访存分离的处理器结构模型
  • 2.2 性能分析相关研究
  • 2.2.1 现有的性能分析方法
  • 2.2.2 稀疏矩阵向量乘法性能模型
  • 2.2.3 矩阵乘法性能模型
  • 2.3 矩阵乘法的相关研究工作
  • 2.3.1 单核矩阵乘法相关工作
  • 2.3.2 多核矩阵乘法相关工作
  • 2.4 小结
  • 第3章 矩阵乘法性能模型
  • 3.1 矩阵乘法划分方法
  • 3.2 单核性能模型
  • 3.2.1 单核性能模型的建立
  • 3.2.2 处理器结构参数优化分析
  • 3.3 多核性能模型
  • 3.4 性能模型的验证
  • 3.4.1 Intel core i7上的性能模型验证
  • 3.4.2 Godson-3A上的性能模型验证
  • 3.5 小结
  • 3.6 附录
  • 3.6.1 引理3.1的证明
  • 3.6.2 定理3.1的证明
  • 3.6.3 定理3.2的证明
  • 3.6.4 定理3.3的证明
  • 第4章 多核处理器结构优化
  • 4.1 一种乘加-shuffle融合的浮点向量指令
  • 4.2 一种计算/访存分离的处理器结构
  • 4.2.1 新的计算/访存分离的处理器结构介绍
  • 4.2.2 访存协处理器
  • 4.2.3 访存协处理器的带宽测试
  • 4.3 基于性能模型对Godson-3B进行评估
  • 4.4 小结
  • 第5章 Godson-3B上的矩阵乘法
  • 5.1 高效的单核矩阵乘法
  • 5.1.1 GEBP核心循环实现方法
  • 5.1.2 寄存器层的访存优化
  • 5.1.3 L2 cache层的访存优化
  • 5.2 多核矩阵乘法
  • 5.3 实验结果和分析
  • 5.3.1 实验平台介绍
  • 5.3.2 不同寄存器分组下的核心性能测试
  • 5.3.3 与性能模型预测值的对比
  • 5.3.4 GEBP核心循环中时间开销分布统计
  • 5.3.5 与其它处理器的比较
  • 5.4 小结
  • 第6章 结论
  • 6.1 本文工作总结
  • 6.2 进一步工作
  • 参考文献
  • 致谢
  • 在读期间发表的学术论文与取得的研究成果
  • 在读期间参与的科研项目
  • 相关论文文献

    标签:;  ;  ;  ;  ;  ;  ;  ;  ;  

    面向高密度计算的多核处理器结构研究
    下载Doc文档

    猜你喜欢