论文部分内容阅读
处理器设计往往需要同时兼顾到性能和功/能耗指标,而这些设计指标之间又往往存在着相互冲突的关系。因此处理器结构设计优化一直以来都是处理器设计过程中的重要问题和难题。尤其是在当今纳米级的制造工艺下,一颗很小的处理器可以集成上亿个晶体管,其内部结构极其复杂,包含了众多结构参数。如何在由众多结构参数构成的指数量级的设计空间内,找到关于性能和功/能耗的同时优化的结构参数配置集合(帕雷托集合),是处理器设计人员面临的最严峻的挑战之一。面对如此巨大的结构参数设计空间,以及高昂的仿真实验代价,通过进行大量仿真实验和人工分析评估的方法,在时间上是不允许的。因此,一种快速、有效的处理器结构设计空间探索(design space exploration,DSE)技术变得十分重要和被迫切需求。 本文通过分析处理器结构DSE问题的特点和需求,提出了一种基于ACOSSO(adaptivecomponent selection and smoothing operator)代理模型的处理器结构DSE技术:通过仿真少量设计点,得到设计点处的处理器性能和功/能耗评估数据,并利用这些数据和设计点处的结构参数构建ACOSSO代理模型,然后利用与ACOSSO代理模型相结合的多目标期望改善(multi-obj ective expected improvement,MOEI)算法在整个设计空间内寻找关于处理器性能和功/能耗全局优化的结构参数帕雷托集合。 具体地,围绕实现该技术的各个方面,本文对代理模型的选择和构建方法,基于代理模型的多目标优化算法,基于MOEI准则的多点采样方法,以及用于配合DSE技术的事务级仿真平台建模技术进行了谈论。本文的主要贡献如下: 1)提出将ACOSSO模型作为代理模型,应用到基于代理模型的处理器结构DSE技术中。通过与领域内已有的几种代理模型在单核、多核处理器仿真平台下分别进行预测准确度的比较,实验结果发现,ACOSSO模型在两个仿真平台下的预测准确度均是最优的,从而验证了ACOSSO模型在处理器结构DSE问题中应用的适用性。其中,在以ANE(averagenormalized error)为预测误差指标的对比中,采用实验设计方法采集200点训练数据,并随机采集100点测试数据时,对于单核处理器仿真平台的4个标准测试程序,ACOSSO模型相对于其他代理模型的ANE指标平均降低0.620%~11.6%(性能预测)和1.35%~11.0%(能耗预测);对于多核处理器仿真平台的4个标准测试程序,ACOSSO模型相对于其他代理模型的ANE指标平均降低1.06%~9.75%(性能预测)和1.32%~10.0%(能耗预测)。 2)提出一种基于ACOSSO模型的MOEI算法(ACOSSO model based MOEI,A-MOEI),实现以较少的采样点数得到对结构参数帕雷托集合逼近程度较好且分布均匀、广泛的优化结果。在预测误差较大的区域内增加采样点,通常可以增加代理模型的预测准确度,扩大寻优范围。而从优化的角度,应该对预测得到的帕雷托点采样,以实现算法快速收敛。多目标期望改善算法框架通过对代理模型的预测不确定性进行建模,实现了对上述两种采样准则的平衡。本文通过推导ACOSSO模型的后验均方误差的计算公式,将其与MOEI算法相结合。实验结果显示,所提算法较其他几种领域内已有的基于代理模型的多目标优化算法具有更好的寻优性能。其中,在多核处理器仿真平台的4个标准测试程序下,采用实验设计方法采集200点训练数据,最大新增采样点数为50点时,A-MOEI算法较其他算法的GD(generational distance)指标平均降低0.0318%~0.187%,IGD(inverted generationaldistance)指标平均降低0.034%~0.122%,NHVR(normalized hypervolume ratio)指标平均提升0.553%~2.24%。 3)为了实现并行肘比量采样,以降低实验代价,本文对A-MOEI算法的多点采样方法进行了研究,并提出了双层循环采样、根据空间分布采样和增强预测与多峰采样相结合的多点采样方法。实验结果显示,将增强预测采样和多峰采样相结合的多点采样方法可以以较小的优化性能损失代价,实现上述目标。其中,在多核处理器仿真平台的4个标准测试程序下,采用实验设计方法采集200点训练数据,最大新增采样点数为50点时,该多点采样方法较原A-MOEI算法在优化性能上的平均损失代价为:GD指标损失0.0562%,IGD指标损失0.0703%,NHVR指标损失0.0775%,但是实现了5倍的并行仿真提速。 4)研究了以系统层处理器结构优化为应用背景的事务级仿真平台建模方法。系统层的处理器结构优化对仿真平台的要求是:要提供足够精度的功能模型和设计指标评估模型,以及能够被接受的仿真速度。基于VPU模型的处理器事务级模型可以达到上述要求。本文对一种基于SystemC TLM2.0技术的VPU仿真平台建模方法进行了研究,并提出了一种基于Python脚本进行仿真控制和调用DSE算法程序的方法。 5)将本文提出的基于ACOSSO代理模型的处理器结构DSE技术应用到了一个系统层处理器结构优化的实例中,并进行了实验评估。本文采用基于SystemC TLM2.0技术的VPU建模方法,对一个包含功耗管理模块和共享DDR的总线型CPU+GPU异构多核目标处理器结构进行了系统层建模,并以一个H.264视频编码程序为目标应用,采用所提的基于ACOSSO代理模型的DSE技术对该目标处理器的结构进行了优化。实验结果显示,本文所提的DSE技术在该实例应用中的应用效果较好,从而进一步验证了本文所提DSE技术的有效性。 本文将提出的基于ACOSSO代理模型的处理器结构DSE技术在不同抽象层次以及不同仿真平台下的结构优化中,进行了验证、评估和应用。实验结果充分证明了该技术的有效性和高效性。本文对于处理器自动化设计方法学中的相关理论研究做出了贡献,所提方法也将在中国科学院计算技术研究所动芯系列处理器的结构优化工作中发挥重要作用。