论文部分内容阅读
以VLSI为代表的现代半导体工艺技术单方面的进步已经很难满足微处理器性能发展的需求,促使微处理器体系结构出现了重大的革新,即以“横向扩展”为特征的多核处理器成为了主流发展方向。多核技术的出现使得微处理器的性能得到了显著的提高,同时对存储系统的设计与技术进步提出了更高的要求。高速缓存Cache一直是处理器内的核心部件,也是决定处理器系统性能的关键因素之一。处理器与主存间的速度差距在多核结构下更为突出,改善存储层的结构设计以及探索高效的管理调度技术以提高Cache资源效率便成了多核处理器研究领域中的一个热点。同时,为研究多核处理器技术而发展出的多核处理器系统模拟平台也正在不停地创新和发展中。所以本文围绕多核处理器体系结构、多核处理器模拟系统M5和Cache存储层的相关优化技术开展了深入的研究。首先分析各种典型多核处理器的体系结构。在基于Cache存储层结构的多核处理器分类研究中发现:采用共享缓存的多核处理器芯片CMP (Chip Multi Processor)结构具有资源利用率高、扩展性强、能耗低等优点,是目前多核处理器架构的主流发展趋势。所以本文选择共享高速缓存Cache的多核处理器CMP进行重点研究。然后,对多核处理器发展中高速缓存Cache存储层所出现的问题进行了分析与研究,主要包括多核结构采用的多级分布式Cache引发的存储一致性问题和采用基于总线监听的Snoop和基于目录的Directory一致性协议及Cache抖动现象、借鉴CFS(Completely Fair Scheduler)做出的资源公平调度、及多核处理器中Cache替换与调度策略研究的归纳总结,分析了Cache存储相关技术、扩展组索引ESC(Extended Set-index) Cache技术、非共享结构下的协同高速缓存CC(Corporative Cache)与动态溢出接收DSR(Dynamic Spill-Receive)缓存技术和新兴领域叠层存储结构3D-Stacked等。其次是在对多核结构和存储层体系研究的基础上,开展了对多核处理器性能评估模型的研究,提出了基于排队论和“执行-传送”关系而建立的存储层性能分析模型ETAM (Executing and Transport Analysis Model),构建了基于最新计算模型M5处理器模拟系统来实现的多核处理器CMP模拟实验平台。ETAM是针对单核处理器为分析不同存储资源特性建立的,通过在交叉访问、队列延迟等方面的扩展就能为多核处理器的设计与开发提供参考。通过采用基准测试程序集SPEC CUP2006对Linux环境中由M5-Alpha21264处理核心配置的多核处理器CMP的性能模拟以及基于M5源代码实现的Pseudo-LRU等高速缓存调度策略所做的实验测评结果分析,证明了采用模块化方法构建的M5模拟系统在进行多核处理器技术的研究中具有很强的可扩展性能和实用性能。再次,在研究多核芯片CMP结构中的“Dead Block”现象和Cache冲突的基础上,设计了伪线程独立的衍生插入与提升HPIP(Homologous Promotion & Insertion Policy) Cache调度策略。HPIP的提出是借鉴了最少使用位置插入策略LIP(LRU Insertion Policy)和双峰插入策略BIP(Bimodal Insertion Policy)的设计思想,采用动态计算和倾向最少使用位置LRU的插入方法来实现线程的相对独立性以减少冲突和缩短“零重用块”的驻留时间,同时采用线性和指数方法计算命中后的优先级位置变化情况以使替换逻辑的优先顺序更能准确反映近期数据块“命中”的访问情况。基于M5模拟系统进行实验表明:参数设置合理的HPIP,相对于传统LRU在系统吞吐量IPC (Instructions Per Circle)、共享Cache缺失率(Miss Rate)、加权加速比(Weighted Speedup)和调和公平性(Harmonic Fairness)等各项度量指标方面能有一定程度的改善和提高。最后,为探索多核共享Cache的自适应策略选择机制,在对不同进程Cache需求特征分类的基础上设计了自适应策略选择APE(Adaptive Policy Election)方案。针对整体性能监测的动态插入机制DIP(Dynamic Insertion Policy)存在采样粒度过粗和线程监测的TADIP(Thread-Aware DIP)机制又面临硬件实现难度太大的问题,APE首次提出了采用多核处理器芯片中固定的处理器内核数目作为Cache采样监测粒度的设计思路,在进行监测模块MRM(Miss Rate Monitor)逻辑结构详细设计的同时对专用监测竞争组SD(Set Dueling)数量和互补选择(Complement Select)方法进行了论证。APE的设计在适当调整监测粒度的同时能够极大地降低硬件的实现代价。通过M5系统对三种设计方案的模拟实验发现:自适应策略选择机制在使CMP性能指标得到相应提高的同时存在着牺牲一定程度公平性的现象,需要进一步的研究与完善。