多核处理器中改进的动态缓存优化技术

时间:2015-10-22 09:18 来源:www.fabiaoba.com 作者:田进华,魏长宝 点击:

  【摘要】:为提高多核处理器中缓存资源池效率并降低芯片总面积,设计三维多核结构,同时给出在线应用感知作业分配和缓存共享策略。通过分析应用程序性能特征预测资源需求量,将相邻层中具有不同缓存特点的作业分配给三维多核结构内核,使应用程序与缓存用途相匹配,同时根据应用程序对缓存需求度分配缓存资源,实现缓存资源利用率的最大化。实验结果表明,该策略可提高系统性能,降低能耗和芯片面积,与基于静态缓存的三维多核存储器相比,该三维多核结构的能量延迟乘积和能量延迟面积乘积分别提高了36.9%和57.2%。

  【关键词】:缓存资源池;缓存共享;多核处理器;三维多核结构;作业分配

  1概述

  三维集成技术可以实现不同技术的异构集成,

  提高单位芯片的晶体管密度和系统性能m。先前对于三维多核系统的大部分研究主要是通过考察固定且同质的计算和内存资源来考虑三维系统能效0。

  然而,异构多核设计可显著降低能耗和成本。这是因为不同应用有不同的资源需求(比如不同的缓存使用量),通过在单个芯片内集成具有不同结构性资源的内核可以解决这_问题。

  目前,研究人员已经为多核系统提出多内核之间的资源池共享及相应的缓存优化技术M。如文献5]提出一种重用感知的缓存块迁移(RABM)策略,采用缓存块的历史迁移信息来预测将来的缓存块迁移,从而降低整个缓存系统的功耗。文献6]提出一种共享缓存分配方法,通过将并行应用时对共享缓存访问未命中的情况进行分类与追踪,并根据建立的性能增益模型在行粒度上进行动态分配共享缓存,使系统得到整体性能改善。文献7]提出一种创建动态异构缓存区域的分子缓存概念。文献8]引入一种低开销在线机制,根据缓存丢失率在多个应用间分配缓存。文献9]证明若考虑互通开销,则L2缓存的多核共享效果会显著下降。

  然而以上方法仍存在不足:(1)没有解决应用对缓存的实时需求问题;(2)关于三维缓存和内存的研究,要么在三维结构内集成了异构静态随机存取存储器(StaticRandomAccessMemory,SRAM)或动态随机存取存储器(DynamicRandomAccessMemory,DRAM)层,要么需要对传统缓存设计进行重大改动,成本较高"3)主要考虑基于静态缓存资源的三维系统,对于动态缓存优化不具有适用性。为此,本文对缓存资源池技术进行研究,设计三维多核结构与在线应用感知作业分配和缓存共享策略,通过实现缓存资源的多样性,提高三维多核处理器的能效。该策略将作业动态分配给三维多核系统内核,使应用与缓存用途相匹配,同时根据应用对缓存的需求度分配缓存资源。

  2基于缓存资源共享的三维多核结构

  本节描述可以实现缓存资源共享的三维结构。图1表示每层均有_个私有L2缓存和_个内核的4层三维系统组成。其中,图1(a)和图1(b)分别是带有2MB和1MB静态私有L2缓存的基准三维结构。图1(c)给出的本文三维结构设计中,每个内核均有_个1MBL2缓存,垂直相邻缓存利用硅通孔技术(Through~silicon-da,TSV)相连实现缓存资源共享。

  2.1三维多核系统

  相比传统缓存结构,本文实现的三维多核系统缓存资源共享允许三维多核系统中的内核,通过利用其他层的缓存资源(访问延时忽略不计)来增加自身私有L2缓存规模。该设计的目的如下:(1)通过在需要时增加缓存规模来提升性能;(2)通过关闭未被使用的缓存区来节约能耗。因为不同应用的L2缓存使用特点区别较大,所以本文重点讨论L2缓存的共享问题,可以将获得的策略拓展到其他数据缓存层。缓存尺寸取决于块尺寸、集合数量和结合性水平。本文通过改变缓存的结合性来调整缓存尺寸。使用文献10中的选择性通道缓存结构,该结构通过关闭不必要的缓存通道来节约二维系统能耗。每个缓存通道称为缓存区。每个区均可被某_个相邻层独立共享。为维持设计的可拓展性并使访问不同区时访问时间相等,不允许跨层内核共享缓存。同时不允许内核同时共享上层或下层的缓存区,以降低设计复杂度。

  2.2三维缓存数据通道管理

  为实现三维系统缓存资源共享,对缓存状态寄存器和缓存控制逻辑进行变动。对三维缓存资源共享,内核需要能够与不同层的缓存区进行交互。为每个本地L2缓存区引入_种本地缓存状态寄存器(LocalCacheStatusRegister,LCSR)(比如本文设计中的1MB缓存有4个区),以记录缓存区的状态。本文为L2缓存引入远程缓存状态寄存器(RemoteCacheStatusRegister,RCSR),因此,L1缓存可感知到其远程缓存区。图2(a)、图2(b)和图2(c)描述了RCSR和LCSR逻辑,通过在线管理策略确定寄存器数值。每个本地缓存区可能有4种情形:关闭,由本地层使用,由上层或下层使用。每个LCSR保存2个比特来表示对应缓存区的当前状态,如图2(d)所示。

  此外,还在L1缓存中为每个内核维护2个单比特RCSR,以感知其远程缓存区。L1的I和D缓存可以使用相同的RCSR比特,因为2个缓存的丢失均朝向L2。如果L1缓存的2个RCSR均被设为0,则表示没有远程缓存区正被使用。相反,如果内核正在使用对应相邻层上的缓存区,则RCSR位设为1。RCSR_0表示下层,RCSR_1表示上层。

  内核利用来自LCSR和RCSR的信息可以与多个层上的缓存区通信。如果有L2请求,则内核根据RCSR数值发送该请求及被请求的地址。_旦请求和地址到达缓存块,则比较被请求地址的标签与标签数组。同时,根据索引来选择每个通道的入口。数据的输出目的地和命中信号由缓存命中之后对应缓存区的LCSR数值确定。本文添加一个多路复用器来选择输出目的地,如图2(c)所示。当有一次L2缓存命中时,命中信号根据LCSR数值返回给输出目的地处的缓存。当本地命中信号和远程命中信号均为0时,表明L2未命中。

  因为在线策略可以动态分配缓存区,所以需要维护所有缓存的数据完整性。如果重新分配缓存区(比如,选择为远程层提供服务的分区来为本地缓存提供服务),则需要在重新分配前清洗缓存通道下的所有缓存块。本文使用与传统二维缓存相同的缓存-致性协议,如果有缓存行失效,则LCSR和RCSR均重设为0,使其无法对远程层进行访问,并且删除本地缓存中的数据项。

  2.3面积和性能开销

  每个单比特寄存器需要多达12个晶体管,每个单比特多路复用器需要多达24个晶体管。因此,本文设计中额外的寄存器和逻辑器需要的晶体管总数量为2568个(10x1-比特寄存器+2x64-比特解复用器+1x30-比特复用器+1x2-比特复用器+1x1-比特解复用器)。假设缓存间的双通道数据传输有128个TSV,内存地址比特有64个TSV,在垂直相邻层上的缓存间传输L2请求和命中比特有额外4个TSV。TSV功耗低于芯片总功耗。因此,在仿真时没有考虑TSV功耗。假设TSV的直径为10中心到中心间距为20pm。TSV的总体面

  积开销低于0.1mm2,与芯片总面积开销10.9mm2相比可以忽略不计。已有研究表明,TSV导致的层-层延时为1.26pSE1,远小于1GHz的CPU时钟周期,因此对性能没有影响。

  3在线应用感知作业分配和缓存共享策略

  图3给出在线作业分配和缓存资源共享策略的流程。该策略包括2个阶段:(1)作业分配,确定每个作业应运行于哪个内核上;(2)缓存资源共享,在_对应用间分配_组可以共享的缓存区。其中,只有o/,和为同一分区展开竞争时才检测条件。

  3.1栈内作业分配

  栈内作业分配在考虑能效和热力学因素的条件下将作业分配给三维系统。基于有4个缓存区时的作业IPC(InstructionPerClock)相对只有1个缓存区时的提升估计值(^)进行分配。利用将在线性能计数数据作为模型输入的离线线性回归模型来估计值。首先将个作业随机分配给三维系统内的个内核,然后开始使用默认的预留缓存区使作业运行_段时间(每个内核有_个无法共享的256KB预留L2缓存区)。估计时使用的性能计数器包括L2缓存替代物、L2缓存写访问、L2缓存读取丢失、L2缓存指令丢失和周期数量。利用线性和交叉条目来构建线性回归模型,使用本文仿真中15个基准性能统计数据来训练回归模型,采用其余5个基准来证明模型的合理性。在仿真实验中发现系统实际性能的提升与预测误差不超过5%。

  根据作业的预测性能提升情况对所有作业进行排序,通过选择剩余排序列表中的最高值和最小值对这些作业两两分组。

  例如在图4中,4个作业按照排序为:义為厶為J3為/4。将这些作业两两分组A与J4,2与J3。通过使IPC较高的作业对更接近于散热片,可以将本文分配策略与热力学感知试探法H相集成。此时,将平均IPC较高的作业对分配给距离散热片最近的可用内核,如图4所示。做出该决策是因为相比距离散热器更远的内核,距离散热器较近的层上的内3.2缓存资源共享

  缓存资源共享为每个作业对内的缓存资源进行管理。为确定一个作业是否需要更多的缓存区,首先引入一种性能提升阈值(t)。该阈值表示作业使用额外缓存区时可以降低能量延迟乘积(Energy-delayProduct,EDP)的最小性能提升幅度。获得t的关键是基于如下假设:当作业可用的缓存区数量上升时,缓存渴求型工作负载的EDP将会下降,因此需要满足如下不等式:

  PowerPower+APower

  IPC2>(IPC+AIPC)2

  其中,/PC和Power表示增加缓存区数量时的性能和功率值;AIPC和APower表示作业使用额外缓存区时IPC和功率的变化量。利用该不等式可知:

  AIPCPower

  !Pc>t=槡+APower-1⑵

  当性能提升量大于t时,增加缓存区数量可以降低作业的EDP。根据实验中的20个SPEC基准,可将t平均确定为3%。


www.fabiaoba.com),是一个专门从事期刊推广期刊发表、投稿辅导、发表期刊的网站。
  本站提供如何投稿辅导、发表期刊,寻求论文刊登合作,快速投稿辅导,投稿辅导格式指导等解决方案:省级论文刊登/国家级论文刊登/ CSSCI核心/医学投稿辅导/职称投稿辅导。

投稿邮箱:fabiaoba365@126.com
 在线咨询: 投稿辅导275774677投稿辅导1003180928
 在线咨询: 投稿辅导610071587投稿辅导1003160816
 联系电话:18796993035

联系方式
李老师QQ:发表吧客服610071587 陈老师QQ:发表吧客服275774677 刘老师QQ:发表吧客服1003160816 张老师QQ:发表吧客服1003180928 联系电话:18796993035 投稿邮箱:fabiaoba365@126.com
期刊鉴别
  • 刊物名称:
  • 检索网站:
热门期刊
发表吧友情提醒

近来发现有些作者论文投稿存在大量剽窃、抄袭行为,“发表吧”对此类存在大量剽窃、抄袭的论文已经停止编辑、推荐。同时我们也提醒您,当您向“发表吧”投稿时请您一定要保证论文的原创性、唯一性,这既是对您自己负责,更是对他人的尊敬。

此类投稿的论文如果发表之后,对您今后的人生和事业将造成很大的麻烦,后果不堪设想,请您一定要慎重,三思而后行。

如因版权问题引起争议或任何其他原因,“发表吧”不承担任何法律责任,侵权法律责任概由剽窃、抄袭者本人承担。

 
QQ在线咨询
论文刊登热线:
137-7525-9981
微信号咨询:
fabiaoba-com

友情链接

申请链接