论文部分内容阅读
“存储墙”问题一直是制约计算机系统性能的关键因素。随着多核处理器成为主流,单个芯片上可以同时运行的线程个数越来越多,这些线程同时竞争有限的访存资源,使得内存控制器面临的访存压力越来越大。 在计算机架构设计中,运用模拟的方法,通过运行实际应用程序对目标性能进行定量分析是非常重要的环节。如何进行高速有效的模拟对于学术界和工业界都是非常重要和有意义的,同时也是研究者和工程人员面临的一大挑战。本文针对多核处理器内存子系统研究中面临的模拟和优化两方面的挑战,从工程实践的角度出发,分别进行了有意义的研究。本文的主要贡献和创新点如下: 1.提出并建立了一套完整的存储系统模拟平台。本文建立的模拟环境,包括基于FPGA加速的全系统模拟平台和基于trace的软件建模、RTL级仿真环境。本文提出的混合真实处理器核和仿造处理器核的片上多核处理器存储系统模拟方法,结合了FPGA原型验证和trace仿真的优势,能够增加FPGA的模拟规模,大幅提高FPGA平台的模拟速度。基于trace的软件建模和RTL级仿真,可以加快存储系统的设计空间探索,加速优化迭代的过程。通过去除不必要的模拟对象,本文进一步提高了RTL级仿真的速度。 2.提出并实现了一种智能的内存控制器端预取。本文基于stream buffer预取,提出了流缓冲延迟替换和动态调整预取激进程度的方法。以上方法可以提高预取数据的利用率,并能够根据访存压力在预取准确度和预取覆盖率之间达到动态平衡,从而优化预取的性能。实验结果表明,本文设计的stream buffer预取可以将SPECCPU2006的平均性能提高3.7%,将STREAM程序的性能提高34%。 3.提出并实现了一种智能的DRAM页面管理策略。通过对DRAM的页面管理模型进行深入地理论分析和实验验证,本文提出了一种接近最优的DRAM页面管理方法。该方法基于开页策略,同时只在必要的时候进行猜测性关页。本文提出了一种简单有效的关页预测算法,并在此基础上,提出了一种利用列地址到达页边界的关页预测方法。实验结果表明,以上方法可以优化DRAM页面管理的效率,提升内存控制器的性能。 上述部分工作在龙芯3B1500、3A2000处理器中得到了实际应用。