论文部分内容阅读
处理器性能分析对于性能瓶颈的定位,指导下一代处理器的设计,具有十分重要的意义。随着微处理器的结构日趋复杂以及目标工作负载的不断变化,性能分析的难度也不断增大。如何使用有限的设计时间和资源进行高效的处理器性能分析是每个微结构设计者都要面对的问题。本文结合龙芯3号处理器处理器作了性能分析,针对发现的性能瓶颈提出了优化方案,并对优化后的性能提升做出了上限分析。针对模拟仿真平台速度慢,运行测试程序时间过长的问题,本文设计并实现了一套精简测试程序Minibench。 本文的主要工作和贡献如下: 1.对SPEC CPU程序进行了程序行为分析,并且得到了一些能够指导处理器性能分析的结论。CPU2000定点的工作集比较小,程序的压力主要在流水线而不是访存;SPEC CPU程序按Cache行为可以分成三种不同的大类,每类程序对CPU的压力各不相同,应该区别对待;x86平台上实测向量化对SPEC定点和浮点程序性能的提升分别达到4%和16%,可以考虑增加向量化的支持。 2.提出了处理器的对标分析方法,并将它应用到3A2000的性能分析工作中,针对性能瓶颈提出了相应的优化方案,并对优化后的性能提升做了上限分析。实际测量数据表明,3A2000主要的瓶颈在于访存和分支预测。访存方面,可以考虑提高数据Cache的访问带宽,缩短二三级Cache和内存的访问延迟;分支预测方面,可以考虑增加BHT和BTB表项等。实验数据表明,缩短二三级Cache延迟平均可以带来22.7%的性能提升;优化分支预测性能提升的上限定点为9.27%,浮点为4.44%。 3.针对模拟仿真平台速度慢,常规的CPU基准测试集工作负载大,执行时间过长的实际问题,本文设计并实现了一套精简测试程序Minibench。通过合理设计程序规模和工作集大小,Minibench在仿真平台的运行时间可以控制住10小时左右。