论文部分内容阅读
在工艺和应用的双重推动下,多核结构成为当前高性能微处理器的发展趋势。多核对单芯片有限Cache、带宽等存储资源的竞争将进一步凸显访存的瓶颈,同时伴随着更加多样的目标应用,微体系结构研究采用的性能评估环境面临新的要求。本文的研究主要围绕多核处理器的性能模拟和存储子系统的性能优化展开,工作涵盖了软件平台建设和结构逻辑设计两个层次,论文的贡献与创新之处包括:1.本文设计并实现了基于龙芯CPU的多核全系统模拟器SimOS-Godson。通过采用所设计的备份回滚、值预测检验等算法,解决了因为功能与时序分离的组织形式而带来的精确异常、存储一致性等关键难题,经过了与真实处理器模型的误差校正,实现了方便高效的调试、控制与统计功能,较好地协调了速度、灵活、精确三方面的关系。SimOS-Godson的平均指令模拟速度超过300K/秒,处理器模型误差小于15%,其不但可以为多核体系结构研究提供基于软件的性能模拟环境支持,同时也是龙芯多核芯片的硅前系统开发平台。2.从有效利用带宽、提高访存性能出发,本文提出了一种乱序调度与模式预测相结合的多核访存控制器管理策略。乱序调度借助多核访存更加密集的特点,将请求队列作为调度窗口,使位于同一Page的请求能连续执行。模式预测根据历史窗口的访存次数来识别热点线程,通过抽取热点流进行Page模式的预测,减轻多核访存请求交织对空间局部性预测的干扰。结合两种优化技术实现的访存控制器能够有效利用DRAM芯片的Open Page特性来降低访存延时,对典型多线程应用的性能提升平均可达8.6%。3.针对多核共享和私有Cache结构各自的优点与局限,本文提出了一种新型的异构CMP Cache结构,采用两类具有不同Cache层次的结点组成多核芯片,设计了基于间接索引的Cache容量复用等技术,协调Cache访问局部性与容量利用率之间的冲突,提供了容量有效且访问迅速的片上存储层次。实验结果表明:对于单进程应用,异构CMP Cache平均可获得16.2%的性能提升;对于多线程应用,性能提升为9.1%。异构CMP Cache还具有硬件结构相对简单的特点,可降低设计和验证的难度,具有较好的工程可实现性。