论文部分内容阅读
随着芯片的集成度和工作速度不断提高,功耗已经成为计算机系统设计中的重要设计约束。多核处理器通过挖掘线程级并行度来提高处理器性能并降低功耗,正逐渐取代传统的单核处理器,成为处理器微体系结构的发展趋势。
高速缓存(Cache)作为连接高速处理器与慢速主存之间的重要桥梁,在计算机系统的性能优化中发挥着重要作用。然而受工艺偏差的影响,存储单元在低供电电压下的失效愈加严重。因此在降低处理器功耗的同时保证Cache的可用性,有着重要的意义。
此外,随着工艺特征尺寸的减小,处理器对电压扰动、电磁干扰以及辐射等各种噪声干扰变得更加敏感,使处理器的可靠性面临着日益严峻的挑战。容错设计是保障系统高可靠性的重要方法,为了更好地指导容错设计,统计并分析故障对系统可靠性的影响是必不可少的,因此计算系统的可靠性评估方法受到广泛关注。
本文分析并探讨了现有的动态电压频率调节(DVFS)技术、阈值电压偏差和供电电压变化对Cache失效的影响,以及低供电电压下的Cache容错技术。提出了一种面向高速缓存失效容忍的多核处理器DVFS方法。该技术从程序运行过程中性能需求阶段性变化的特征入手,动态调节处理器的供电电压和工作频率,显著地降低了处理器通量能耗(Energy/Throughput2),并针对低供电电压下Cache失效行为,进行Cache动态重构,保证Cache的可用性。此外,本文设计实现了一个软硬件协同的微处理器可靠性设计评估平台。本文的主要贡献包括:
1.Cache失效率分析及动态分组重构容错方法。本文详细分析了阈值电压偏差和供电电压变化对Cache失效的影响模型,并通过模拟计算得到在不同供电电压下的Cache失效分布图;在此基础上采用动态分组重构容错方法,容忍Cache中的失效单元,为DVFS算法提供可用的Cache;
2.提出一种基于程序段的细粒度DVFS算法。利用程序性能需求阶段性变化的特点,以通量能耗为指标,为具有不同性能需求级别的程序段动态指定最优的供电电压和工作频率。此外,本文在DVFS算法中引入波动容限[-0.15,+0.15],避免了因性能(Performance)和能耗(Energy)的正常波动而频繁调节电压和频率。在SimpleScalar上运行SPEC CPU2000基准测试程序的实验结果表明,对于性能需求呈阶段性变化的测试程序,通量能耗平均降低了13.6%。引入波动容限使DVFS调节频度平均降低了94.1%;
3.设计实现了一个软硬件协同的微处理器可靠性设计评估平台。将Alpha21264处理器综合实现为实验电路。通过软硬件协同仿真的方法实现了软件与硬件的交互,改善了软件模拟器故障注入精度不高,以及硬件实现故障注入难以调试的缺点。