首页> 中文学位 >异构众核体系结构Cache功耗和性能优化关键技术研究
【6h】

异构众核体系结构Cache功耗和性能优化关键技术研究

代理获取

目录

第一个书签之前

摘 要

ABSTRACT

绪论

课题背景

存储墙问题

功耗墙问题

众核和异构的发展趋势

相关研究

Cache功耗问题

CPU Cache 性能优化

GPGPU 存储性能优化

异构众核融合体系结构的研究

课题研究内容

Cache 功耗优化

Cache 性能优化

本文的工作与创新

论文结构

面向低功耗的Cache路划分方法

背景和研究动机

基于程序存储区的Cache路划分方法

基于程序存储区的Cache分区

基于程序存储区的路划分方法

实验结果和分析

模拟环境

性能分析

能耗分析

路划分策略分析

小结

消除标识检查的Cache功耗优化方法

研究动机

消除标识检查的Cache设计

CWR结构设计

TCE在流水线中的基本设计

TCE工作流程

一致性和准确性

Cache对TCE直接访问的支持

基本TCE设计下的CWR命中率

优化策略

能耗模型和仿真环境

能耗模型

系统配置

实验结果和分析

TCE性能分析

能耗分析

功耗和性能对比分析

灵敏度分析

ARM指令集实验

小结

众核体系结构Cache动态分配方法

背景和研究动机

GPGPU 体系结构

GPGPU编程模型

研究动机

SCA的基本算法和设计

重用信息收集

Cache概率分配方法

基于反馈的优化

实验结果和分析

实验配置

性能和分析

小结

面向Cache性能的众核处理器并发度分配

研究动机

Cache静态分配

静态Warp划分

访存模式和局部性

访存模式

Cache和并发线程的分配

设计概览

访问模式识别

局部性探测

数据足迹估计

确定缓存Warp的数量

确定运行Warp的数量

实验结果和分析

实验方法

程序中的访问模式

设计因素分析

动态CCA性能和分析

Cache失效率

小结

结束语

工作总结

未来研究方向

致谢

参考文献

作者在学期间取得的学术成果

缩略语与符号列表

展开▼

摘要

当前处理器发展向异构和众核方向发展。异构是指在同一个芯片上包含有不同架构的处理器核心。众核是指同一个芯片上的处理器核心数目达到上千个。异构众核的体系结构以其高性能、高能效比的优势在高性能计算中得到广泛应用。但是,当前的处理器性能的进一步发展正被功耗和“存储墙”问题所困扰。一方面,随着工艺的进步,单芯片上集成的集体管数目越来越多,但是功耗和散热问题使得这些晶体管难以同时工作,制约了性能的提升。另一方面,内存速度的增长仍远远落后在处理器速度增长之下,造成两者之间的速度差异越来越大,成为性能瓶颈。
  Cache在微处理器中担任着缓解“存储墙”问题的角色,通过发掘数据的局部性,弥补内存和处理器之间的速度差异。但是大容量的Cache占据了芯片上大量的面积,并消耗着高达50%的处理器核心能耗。这就要求在异构众核的体系结构下,一方面需要优化Cache功耗,以此降低整个芯片的功耗,另一方面要提高Cache性能,从而提高整个系统的性能和吞吐率。Cache的功耗和性能优化研究对于整个芯片的低功耗和高性能研究具有重要的意义。本文针对异构众核体系结构下一级Cache的访问功耗和Cache利用效率展开研究,重点关注了一级Cache并行访问造成的功耗浪费,以及上千线程共享Cache下的Cache分配问题。本文主要取得以下研究成果:
  1.提出了一种面向低功耗的Cache路划分方法。根据程序中栈区和非栈区数据的访问特性,在本文的工作中,提出了基于程序存储区的一级Cache的划分方法。通过将程序访问的栈区和非栈区的数据访问进行分离,分别对应到不同的Cache路中。每个存储访问不用访问所有的Cache路,从而降低Cache访问的功耗开销。并且这种根据程序数据访问特征进行的动态划分方法可以适应于不同的程序,避免了静态划分方法可能带来的程序性能下降。对于4路组相联的Cache,这种方法可以节省约28%的Cache功耗。
  2.提出了一种消除标识检查的Cache功耗优化方法。同样针对于Cache并行访问的功耗问题,本文提出了一种通过直接访问曾经访问过的Cache行,避免多路访问的方法。该方法首先在缓存中记录曾经访问过的Cache行的基地址寄存器和相应的偏移,在另一个具有相同基地址寄存器的指令进行存储访问时,对存储访问的偏移量和缓存中的偏移量进行比较确定当前的访问是否在记录的Cache行中。如果在同一个Cache行中,就可以直接对相应的Cache行进行访问,从而避免标识检查。同时由于可以直接对Cache行进行访问,就不需要对TLB进行访问,从而进一步节省相应的功耗。实验表明,这种方法可以减少约30%的Cache动态功耗,并减少67%的TLB访问功耗。
  3.提出了一种众核体系结构下的Cache动态分配方法。由于Cache容量和线程数量的差异,众核GPGPU中Cache行的利用率通常比较低。本文针对这样的情况,提出了一种面向众核体系结构的概率性的Cache行分配方式。在每个Cache行上记录最开始请求该Cache行的指令地址和该Cache行的重用次数。根据重用信息对指令进行动态的Cache行分配。Cache行重用率低的指令将具有较小的概率分配到Cache行。通过这样的Cache分配方式,提高Cache的利用率,避免过多的Cache请求造成冲突,提高整个系统的性能。实验表明该方法最多可以提高程序性能达2.5倍。
  4.提出了一种面向Cache性能的众核处理器并发度分配方法。GPGPU上具有上千的线程,而整个系统的存储带宽和Cache并不能够支持这样多的线程并发运行。在本文的工作中,提出了一种基于指令访问模式的Cache和并发度的分配方法。该方法首先对整个程序核心中的访存指令按访问模式进行分类。通过访问模式的特征和Cache访问命中率,分析访问的局部性。根据访问的局部性和Cache的容量,确定可以使用一级Cache的Warp数量和可以并发运行的Warp数量。由于对使用Cache的Warp进行限制,对并发Warp的数量进行约束,更好地利用整个系统的存储和计算资源,最终提高整个系统的性能。实验表明该方法最多可以提高程序性能达3倍,并取得54%的平均性能提升。

著录项

相似文献

  • 中文文献
  • 外文文献
  • 专利
代理获取

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号