基于置信度评估的预测路径数据自适应存储策略.doc_第1页
基于置信度评估的预测路径数据自适应存储策略.doc_第2页
基于置信度评估的预测路径数据自适应存储策略.doc_第3页
基于置信度评估的预测路径数据自适应存储策略.doc_第4页
基于置信度评估的预测路径数据自适应存储策略.doc_第5页
已阅读5页,还剩6页未读, 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

面向微处理器猜测执行过程中预载入数据的Cache污染控制方法张骏(西安交通大学电信学院, 陕西 西安,710049)Email: Z摘 要:“存储墙”问题已经成为处理器性能提升的主要障碍,而处理器内核猜测执行预测路径上访存指令时预载入的存储器数据所导致Cache污染会严重影响处理器性能。本文提出一种针对猜测执行过程中预载入数据的Cache污染控制方法CSDA。首先,利用置信度评估技术从所有预测路径中分离出错误概率较大的路径。然后,根据低置信度污染型访存指令识别历史表将低置信度预测路径上的访存指令划分为预取型和污染型,为污染型的访存指令建立低优先级Load/Store队列,并采用污染数据Cache存储污染数据。仿真结果表明,在双核模式下,CSDA策略相对于baseline结构来说, L1 D-Cache缺失率降低幅度从9%-23%,平均降低了17%;L2 Cache缺失率的下降范围从1.02%-14.39%,平均为5.67%;IPC的提升幅度从0.19%-5.59%,平均为2.21%。关键词:微处理器; 存储系统; 置信度评估; Cache污染中图法分类号:TP303 文献标识码:AA Cache Pollution Control Method for Pre-Loaded Data DuringMicroprocessors Speculative ExecutionZhang Jun(Department of Computer Science and Engineering, Xian JiaoTong University, Xi an, ShaanXi, China 710049)Abstract:“Memory Wall” problem already became the chief obstacle for processor performance promotion. Cache pollution caused by the speculative execution of memory accessing instructions in predictive path may affect the performance of processor seriously. This paper proposes a cache pollution control method for predictive path during speculative execution based on confidence estimation, called CSDA. First of all, confidence estimation technique can be used to separate out the more likely mis-predictive paths from all predictive paths adaptively. Second, all memory accessing instructions in low confidence predictive path are divided into pre-fetching type and polluting type according to the low confidence polluting type memory accessing recognition history table adaptively. A special low priority Load/Store queue is created for these polluting type memory accessing instructions, and polluting data cache is used to store polluting data. In brief, CSDA may alleviate the negative effect of cache polluting data, and promotes the effective memory bandwidth. Simulation result indicates that, in dual-core configuration, CSDA could avoid most cache pollution and upgrade performance. Relative to the baseline architecture, miss rate reduction of D-Cache ranges from 9% to 23%, averagely 17%. Miss rate reduction of L2 cache ranges from 1.02% to 14.39%, averagely 5.67%. Improvement of IPC ranges from 0.19% to 5.59%, averagely 2.21%.Key words: Microprocessor; Memory System; Confidence Estimation; Cache Pollution1 引言高性能处理器设计面临的两个主要障碍是分支误预测和存储器延迟,为了隐藏存储器延迟和降低额外的分支误预测代价,一个重要的研究内容就是在分支预测时,猜测执行的预测路径指令和预测路径上的存储器数据访问对性能的影响以及优化问题12。研究表明SPEC CPU 2000的数据密集型测试程序平均浪费50%以上的时钟周期用来取错误路径的指令;而所有执行的指令中,错误路径指令占到28%,非访存指令和访存指令分别占到18%和10%。尽管错误路径上的访存操作不能改变处理器的体系结构状态,但是却改变了存储层次上数据的排列状态。对于SPEC CPU2000测试程序来说,如果不考虑错误路径上的访存操作,那么在IPC性能上会有2%10%的偏差3456。目前,多内核结构是提升处理器性能的最有效手段,也是微处理器体系结构的未来发展方向。因此,本文基于共享存储器的多核处理器结构进行研究。在共享L2 Cache的片上多核结构下,多个内核竞争使用L2 Cache,相对于单核结构来说平均访存延迟已经增大,有效访存带宽变得更窄、更不稳定。错误路径访存数据对Cache造成的污染进一步缩小了Cache空间的使用有效性,加深了存储器瓶颈对处理器性能的影响。Dhruba Chandra8等人的研究表明,在双核结构,L2 Cache大小为512K、8路组相连、每行64字节的配置下,同时运行两个线程时L2 Cache缺失率比运行单个线程时平均增加142%,IPC平均下降23%。引起性能下降的一个重要原因就是L2 Cache的污染。本文结合置信度评估机制提出一种针对猜测执行中预载入数据的Cache污染控制方法CSDA,利用置信度评估技术对条件分支进行评估,根据预测路径数据在不同存储层次上造成的污染对处理器性能影响程度的差异,设计不同的预测数据存储方案,从而最小化污染效应、兼顾预取效应。本文的结构分为8节:第2节说明了执行错误路径指令对处理器性能的影响;第3节介绍了置信度评估技术;第4节介绍了针对处理器猜测执行过程中预载入数据的Cache污染控制方法CSDA(Confidence Estimation Based Speculative Path Data Adaptive Storage),描述了CSDA的结构和工作流程;第5节介绍本文的实验平台,描述了仿真过程并分析了仿真结果;第6节是CSDA的实现代价;第7节是相关研究;第8节是本文结论。2 猜测执行错误路径指令对处理器性能的影响执行错误路径指令对片上多核处理器影响包括三方面:(1)错误路径指令对带宽和资源的竞争。(2)预取效应。假设错误路径上的Load指令发生Cache缺失,从主存取回的数据存放在Cache中,并在替换出去前被后来的访存指令用到,这起到了数据预取的作用;(3)污染效应。假设错误路径上的Load指令发生Cache缺失,从主存取回的数据存放在Cache中,但从来没有被后来的正确路径指令用到或者在被后来的正确路径指令用到前就已经被替换出去,这缩小了Cache的实际可用空间,降低了存储系统性能。下面通过5.1节所搭建的仿真平台运行测试程序具体说明。在双核模式、每内核运行一个测试程序的配置下,使所选择的8个测试程序各运行2000M条指令。2.1 对带宽和存储资源的竞争错误路径上存储器访问发生Cache缺失时,如Load缺失和Store缺失,将会占用一级、二级Cache请求队列、总线请求队列、存储器数据缓冲区和重排序缓冲区等资源。存储系统是提升处理器性能的主要瓶颈,而错误路径上访存指令占用了数据通路上一系列关键的存储资源和带宽资源,必然会增大正确路径上存储器访问的平均延迟,降低处理器性能。另外,错误路径上还可能存在其它的分支指令,这将导致分支预测单元对不必要的分支进行预测,并使得指令预取单元从错误的路径上取指令,从而造成Cache竞争和缺失增加。表1:分支指令执行情况Table 1: Execution status of branch instructions程序执行分支指令数提交分支指令数执行的错误路径分支数错误路径分支占总分支比例分支预测成功率Ammp48554879847878399267648061.39%99.16%Applu865950768467278219222942.22%75.25%equake288774219260489748282844719.79%86.12%Parser344484754319844247246405077.15%93.11%Mcf579431913536215189432167247.46%94.43%mgrid2174279721707215355820.16%98.4%perlbmk349767183317105981326612029.34%96.35%Vortex36226125935410391581573442.25%97.21%从表1看出,8个测试程序的分支预测正确率基本在90%以上,平均为92.50%。错误路径上的分支指令数占到执行的分支指令数的0.16%9.79%不等,平均为4.97%。从表2可以看出,所有测试程序都执行了大量的错误路径Load指令,执行的错误路径指令占到执行的Load指令数比例从14.19%-0.045%,平均6.08%。每条错误分支上平均分布5.64条Load指令。表2: Load指令执行情况Table 2: Execution status of load instructions程序执行Load指令数提交Load指令数执行错误路径Load指令数错误路径Load数占总Load数比例每条错误分支上平均分布的Load数Ammp74150790373235453991533641.23%1.35Applu729234481695819316334151654.58%17.38equake626874038569694346571796929.12%2.02Parser817621569749154276684672938.37%2.78Mcf685564687623250232623144559.08%1.44mgrid122539317712248377385554390.045%15.6perlbmk72963877762606959510356918214.19%3.17Vortex555113690544083575110301151.99%1.35表3: Store指令执行情况Table 3: Execution status of store instructions程序执行Store指令数提交Store指令数执行错误路径Store数错误路径Store数占总Store数比例每条错误分支上平均分布的Store数Ammp33594909329613256335841.89%0.09Applu19256213119256137575600equake203460011184188895192711169.47%0.68Parser15889473115180422770905044.46%0.29Mcf183141143172937209102039345.57%0.24mgrid3151667331467144495290.16%1.39perlbmk3709243773079457446297863316.98%1.93Vortex38681363337977592470377091.82%0.86从表3可以看出,执行的错误路径Store指令数相对少于错误路径Load指令。最少的是Applu,可以忽略不计;最多的是Perlbmk,执行的错误路径Store指令占总Store指令总数比例从16.98%-0%,平均5.04%。每条错误分支上平均分布0.69条Store指令。2.2 预取效应为了评估执行错误路径访存预取效应对性能的影响,必须要在保留污染效应的同时消除预取效应。实验中采用的方法是在分支化解前为Cache中预测路径取回的数据增加错误路径数据有效标志位,在分支化解后使正确预测路径取回数据的错误路径数据标志位无效,则剩余的错误路径数据标志位有效的即为错误路径数据。指令访问Cache命中时,要检查错误路径数据标志位是否有效。如果标志有效,即使命中也同样要访问主存;如果无效说明命中的数据不是由错误路径访存指令取回的。表4:消除错误路径预取效应对L2 Cache性能的影响Table 4: Impact to L2 Cache when wrong path pre-fetching effect is removed程序基准结构L2 Cache 缺失率无预取效应时L2 Cache 缺失率L2 Cache缺失率增加百分比Ammp+AppluAmmp0.69090.71052.84%Applu0.85470.93799.73%Ammp+VortexAmmp0.70400.72442.89%Vortex0.07020.078411.64%Applu+equakeApplu0.73450.79598.36%equake0.60510.715318.21%equake+Parserequake0.59490.701417.9%Parser0.05930.066512.03%Parser+McfParser0.11160.136822.6%Mcf0.72120.870620.71%Mcf+mgridMcf0.62420.736217.92%mgrid0.96300.97110.84%mgrid+perlbmkmgrid0.73850.74330.63%perlbmk0.00010.000112.05%perlbmk+Vortexperlbmk0.00010.000113.13%Vortex0.02820.02954.67%从表4可以看出,消除错误路径预取效应后,所有测试程序的L2 Cache缺失率均有显著增加,范围从22.6%-0.63%,平均提升11%。试验结果说明执行错误路径访存指令确实能够起到预取作用。2.3 污染效应为了评估错误路径数据污染效应带给程序性能的影响,必须要在保持预取效应的同时消除无效数据对Cache空间的占有。实验中我们将错误路径存储器访问取回的数据放入一个独立的数据缓冲器而不是直接放入Cache中。这个独立的数据缓冲器与一级Cache可以并行访问,当正确路径指令用到这些数据时将它们替换进Cache中。从表5中可以看出,在消除了Cache污染效应后8组测试程序的IPC均有不同程度的提升。IPC提升幅度从7.12%-0.18%,平均提升3.08%。可见,污染效应能够严重影响处理器IPC性能。表5:消除错误路径污染效应对IPC性能的影响Table 5: Impact to IPC when wrong path polluting effect is removed程序基准结构的IPC无污染效应时的IPCIPC增加百分比Ammp+AppluAmmp0.51670.53192.94%Applu0.83300.83610.37%Ammp+VortexAmmp0.55070.56612.78%Vortex1.47661.49591.31%Applu+equakeApplu1.36951.38220.93%equake1.13971.22097.12%equake+Parserequake1.21831.30056.74%Parser1.34771.41895.28%Parser+McfParser0.92840.98996.62%Mcf0.71100.75676.42%Mcf+mgridMcf0.72630.77216.3%mgrid1.68841.69140.18%mgrid+perlbmkmgrid1.60391.60690.19%perlbmk1.21301.21690.32%perlbmk+Vortexperlbmk1.16141.16530.33%Vortex1.31431.33321.43%3 置信度评估3.1 置信度评估简介文献1最先提出了置信度评估的概念,用来控制和指导推测执行,为分支预测提供正确率估计。本文基于一级动态置信度评估算法进行研究,如图1所示。图1 一级动态置信度评估方案Fig 1: One level dynamic confidence estimation plan一级动态置信度评估方案中,只使用一级查找表。表中每项含有最近n次预测正确/不正确的标志。错误/历史表的每行是N位完全移位寄存器,称为正确/错误寄存器(CIRCorrect/Incorrect Register)。整个表称为正确/错误历史表(CTCIR Table)。表中1表示预测错误,0表示预测正确。访问CT表可以有多种方法。第一种方法使用截断的程序计数器。第二种方法是在转移历史寄存器BHR中保留全局转移结果,用BHR索引CT。第三种是维护一个全局CIR,并且用它进行索引。规约函数通常包括:计算1的个数、饱和计数器和复位计数器。3.2 置信度评估的性能参数采用2中的方法,用C和I分别表示“正确”和“错误”的预测。HC表示高置信度,LC表示低置信度。Ch表示判定为高置信度并且预测结果正确;Ih表示判定为高置信度但是预测结果错误;Cl表示判定为低置信度但是预测结果正确;Il表示判定为低置信度并且预测结果错误。不同应用只看中低置信度或者高置信度子集,而且不同应用需要的衡量参数不同,Cache污染过滤技术主要与特异性参数SPEC相关,表示错误预测的转移中被标识为低置信度的概率,如公式(1)所示。SPECPLC|I (1)本文设计的污染过滤方案主要是利用置信度评估来过滤掉Cache中的污染数据。从前面的分析中可以得知,SPEC指标越高,就可以越有效的过滤Cache中的污染数据。4 CSDA本节根据执行错误路径指令对片上多核处理器性能的影响,结合置信度评估策略,提出一种针对猜测执行中预载入数据的Cache污染控制方法CSDA(Confidence Estimation Based Speculative Path Data Adaptive Storage)。CSDA使用置信度评估技术对程序分支进行评估和分类,将所有分支自适应地分为高置信度和低置信度分支,高置信度预测分支上的访存指令按照正常访存流程处理;通过污染自适应识别机制将低置信度分支上的访存指令分为预取型的污染型。预取型的访存指令取回的数据将存放在Cache中,而污染型的访存指令取回的数据将被存放在低置信度预测路径数据Cache中,同时设计了低置信度预测路径Load/Store队列,保证正常指令流中的访存指令优先访存。从而在减少Cache污染的前提下能兼顾预取效应,减少了错误路径访存指令对有效访存指令的影响,提升了存储器有效带宽。图2是4核模式下CSDA策略的整体结构,在原有共享L2 Cache的多核结构上加入了多核结构置信度评估单元(MCEU)、低置信度污染型访存指令识别历史表(LPHT)和低置信度污染型Cache(LPC);每个处理器内核增加了各自的Load/Store指令缓冲区(LSB)、低置信度Load/Store队列(LLSQ)。其中,MCEU负责对来自多个内核的分支指令做置信度评估;LSB解析出发射的低置信度访存指令的访存地址,并使用这个访存地址访问LPHT,从而确定当前低置信度访存指令是否为污染型;LLSQ接收来自LSB中的污染型访存指令,LLSQ的访存优先级低于Load/Store对列。LPC存储LLSQ中的访存指令取回的数据,有效地消除了Cache污染给性能带来的影响。图2 CSDA策略的结构Fig 2: Structure of CSDA strategy4.1 片上多核结构的置信度评估为了能使多个处理器内核共享一个置信度评估单元,必须使得置信度评估单元能够同时对多个处理器内核的分支指令预测结果进行评估,如图3所示。图3 片上多核结构一级置信度评估结构Fig 3: One level confidence estimation plan for multi-core architecture图3中虽然多个内核共享一个正确/错误历史表,但是每个内核都使用自己的PC和分支历史寄存器做哈希操作后索引正确/错误历史表。这是因为每个内核都有各自不同的分支历史,如果使用一个全局的分支历史寄存器分别与所有内核的PC值做哈希操作来索引正确/错误历史表,将导致某个内核所引用的历史信息不恰当,从而使得预测的结果不准确7。哈希操作定义为将每内核的PC与其对应的分支历史寄存器做拼接,然后输出特定宽度的二进制码来索引正确/错误历史表。考虑到误预测的簇聚性和设计复杂度等原因,选择饱和计数器做规约函数,每次正确预测以后,对相应置信度历史表计数器增1;而在误预测时,如果当前计数器的值n,那么计数器的值减n;如果当前计数器的值8,计数器的值减8;如果当前计数器的值=8,计数器的值清0;LPHT中的污染型访存标志表容量为4K个入口,每个入口存储一位标志,用来进行表索引的哈希函数定义为取访存地址的后12位进行索引;Load/Store指令缓冲区LSB的容量为32条访存指令;LLSQ与LSQ同为64个入口。LPC为16个入口的全相联Cache,块大小与L2 Cache同为64字节。5.1 仿真工具及参数本文采用由Sandeep Baldawa和Rama Sangireddy等开发的片上多核体系结构仿真器CMP-SIM9进行仿真,该仿真器能够对片上多核处理器系统结构以及程序性能分析等进行建模。表6 CMP-SIM仿真器参数配置Table 6: Parameter configuration of CMP-SIM Each Core of CMP取指/译码/发射/提交宽度4ROB容量152个入口功能部件3定点单元、1定点乘法器、2浮点单元,1浮点乘法器、1个Load/Store单元,64个入口分支预测BimodBTB4路512组RAS8入口分支误预测代价13时钟周期发射错误路径指令是Memory System每内核私有的L1指令/数据Cache32KB,4路组相连,写回,PLRU,命中时延1时钟周期,不命中填充时延8个时钟周期共享L2Cache512KB,8路组相连,写回,PLRU,命中时延5时钟周期,不命中填充时延18时钟周期主存总线宽度8字节访存时延100时钟周期本文选用8个SPEC CPU2000测试程序进行仿真,其中SPEC2000FP和SPEC 2000INT测试程序各四个,均采用参考(Ref)输入数据集。每个仿真程序在初始时都跳过一定数量的指令,然后对后续的2000M条指令作性能仿真。仿真时,在单核模式下对所有8个测试程序分别仿真,在双核模式下从8个测试程序中选出2个测试程序协同调度共有28种组合,我们选择8种组合进行仿真,结果同样能说明所提出算法及策略在片上多核体系结构下的有效性。5.2 对L1 D-Cache缺失率的影响对L1 D-Cache缺失数量做统计时,由于在双核模式下8个测试程序均运行两次,取两次L1 D-Cache缺失数量的平均值作为最终性能数据。图6 L1 D-Cache缺失率变化情况Fig 6: L1 D-Cache miss rate图7 相对于baseline的L1 D-Cache缺失率下降百分比Fig 7: L2 D-Cache miss rate reduction relative to baseline可以看出,WPC策略和CSDA策略都能有效地降低L1 D-Cache缺失率。WPC由于能在执行错误路径上的Load指令时将取回的数据放入WPC中而部分避免D-Cache污染,缺失率降低幅度从5%-19%,平均13%。而CSDA策略通过置信度评估和分离污染型访存的方法来避免Cache污染,有效地降低了D-Cache缺失率,幅度从9%-23%,平均降低了17%。5.3 对共享L2 Cache缺失率的影响图8 L2 Cache缺失率的变化情况Fig 8: L2 Cache miss rate图9 相对于baseline的L2 Cache缺失率下降情况Fig 9: L2 cache miss rate reduction relative to baseline从图8和图9中可以看出WPC策略的L2 Cache缺失率相对于baseline下降不大,范围从0.02%-0.82%,平均减少0.29%,这是因为WPC的污染过滤主要在L1 Cache中进行。而无论是正确路径还是错误路径的数据都要先进入L2 Cache,所以在L2 Cache中污染同样存在。CSDA策略中与L2 Cache并列的LPC使得L2 Cache避免了存储污染型数据,同时保留了预测路径访存操作的数据预取效应,从而提高命中率。应用CSDA策略时L2 Cache缺失率的下降范围从1.02%-14.39%,平均为5.67%。5.4 对IPC的影响图10和图11中的IPC是同时调度的两个测试程序IPC之和。在应用WPC策略时,IPC的提升幅度从0.14%-3.62%,平均为1.28%;在应用CSDA策略时,IPC的提升幅度从0.19%-5.59%,平均为2.21%。WPC策略将对Cache污染的过滤放在L1 Cache层次,提升了D-Cache命中率,这是WPC策略IPC提升的主要原因。而CSDA策略同时避免了L1 Cache和L2 Cache两个存储层次上的Cache污染,提升了两个存储层次的命中率,因此CSDA策略的IPC提升幅度大于WPC策略。图10 IPC的变化情况Fig 10: IPC status图11 相对于baseline结构IPC提升百分比Fig 11: IPC increase relative to baseline6 CSDA的实现代价根据CSDA所实现的功能,需要在以下几个方面增加额外的硬件支持:(1)为了自适应的分离出错误概率较大的指令执行路径需要增加置信度评估单元。假设使用一级动态置信度评估方案,用PC的M位与全局转移历史寄存器做Hash操作来索引CT表,并且CT表中每项的计数器宽度为N,则实现这个一级动态置信度评估方案需要增加N2M bits的存储器。置信度评估单元与分支预测单元是并行对条件分支指令进行评估,不会造成流水线译码级延迟增加。(2)为了精确识别低置信度路径上的污染型访存指令,需要增加低置信度污染型访存指令识别历史表(LPHT),并对Cache数据结构作修改,为每个Cache行的TAG字段增加上两个标志位SPD和AHT。如果使用的LPHT有E个入口,每个入口存储F位标志,则需要额外增加EF bits的存储器;而假设为一个总容量为P,每行容量为Q的cache增加标志位,则需要增加额外2P/Q bits的存储器。(3)为了减少低置信度污染型访存指令对正常指令执行流程的影响,需要增加Load/Store指令缓冲区(LSB)、低置信度Load/Store队列(LLSQ)和低置信度污染型Cache(LPC)。LSB和LLSQ起到存储转发作用,而LPC用来缓存污染数据,更倾向采用结构简单、容量小的Cache。因此,这些单元不会占用过多存储器。增加的面积依赖于具体实现中所使用的M、N、E、F、P和Q的值。如果使用的参数值较大,那么这些增加的存储逻辑动态功耗将变的可观。可以尝试在以后的设计中采用写标志位或者程序自陷的方式来关闭置信度评估单元和SPD和AHT的使用,以便根据具体应用的不同来节省功耗。7 相关工作以前对错误路径存储器访问的研究都集中在评估有关Cache命中率的性能上,但随着分支误预测对处理器整体性能的影响日益显著和存储器瓶颈问题的越发突出,越来越多的学者也研究了以猜测的方式执行错误路径指令对Cache和处理器性能影响3 4 5 6 11。通过研究发现,为了避免错误路径数据对Cache的污染,研究人员提出了多种有效方案。文献4和5中提出的错误路径Cache能有效地避免污染问题的发生,并且能利用错误路径预取数据。但是目前分支预测器的预测成功率已能达到95%以上,如果将所有的预测路径数据都统一存放在错误路径Cache中,为了能够保证错误路径上的访存操作预取的数据不会被过早替换出去,那么这个错误路径Cache的容量和复杂度就会变大;而如果错误路径Cache被设计的过小,虽然能够避免Cache污染问题,但是却无法发挥错误路径访存指令数据预取的作用。文献3提出的“固定预取块”的概念与错误路径Cache技术类似,实际上是将错误路径Cache与通常意义上的Cache集成到了一起,同样存在以上提到的问题。本文提出的CSDA策略利用置信度评估技术对分支进行评估,根据预测路径数据在不同存储层次上造成的污染对处理器性能影响程度的差异,为不同置信度的分支设计出不同的预测数据存储方案,达到了避免Cache污染、兼顾预取的效果。8 结论CSDA策略实现了针对错误路径访存指令的两级自适应分离,第一级利用置信度评估技术从所有预测路径中自适应的分离出错误概率较大的路径,第二级根据低置信度污染型访存指令识别历史表将低置信度预测路径上的访存指令自适应的划分为预取型和污染型,并为污染型的访存指令建立专门的优先级较低的Load/Store队列,减少了错误路径访存指令对有效访存指令的影响,提升了存储器有效带宽。仿真结果表明,CSDA策略通过置信度评估和分离污染型访存的方法来最大程度的避免Cache污染,有效提升了性能。相对于baseline结构来说,D-Cache缺失率降低幅度从9%-23%,平均降低了17%;L2 Cache缺失率的下降范围从1.02%-14.39%,平均为5.67%;IPC的提升幅度从0.19%-5.59%,平均为2.21%。References: 1 Jacobsen E, Rotenberg E, Smith J E. Assigning confidence to conditional branch predictionsA. In: 29th Annual International Symposium on MicroarchitectureC, Paris, France, ACM, IEEE. 1996. 1421522 Grunwald D, Klauser A, Manne S, et al. Confidence esimation for speculation controlA. In: 25th International Symposium on Computer ArchitectureC, Barcelona, Spain, ACM, IEEE. 1998. 1221313 Reungsang P, Park S K, Jeong S W, et al. Reducing cache pollution of prefetching in a small data cacheA. In: Proceedings of the International Conference on Computer Design: VLSI in Computers & ProcessorsC. IEEE Computer Society, Washington, DC, USA. 2001. 530-5334 Sendag R, Lilja D J, Kunkel S R. Exploiting the prefetching effect provided by executing mispredicted load instructionsA. In: Proceedings of the 8th International Euro-Par Conference on Parallel ProcessingC. Springer-Verlag London, UK 2002. 468-4805 Chen Y, Sendag R, Lilja D J. Using incorrect speculation to prefetch data in a concurrent multithreaded processorA. In: Proceedings of the International Parallel and Distributed Processing SymposiumC. IEEE Computer Society, Washington, DC, USA 2003. 766 Armstrong D N, Kim H, Mutlu O, Patt Y N. Wrong path events: exploiting unusual and illegal program behavior for early misprediction detection

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论