论文部分内容阅读
“存储墙”依然是计算机系统设计中的重要问题。随着半导体技术的迅猛发展和计算需求的日益复杂,不断增加的核数、线程数和数据集大小会对存储系统产生巨大的压力,加剧“存储墙”问题。传统多核处理器使用集总式的共享存储系统,当大量处理器核并发访存时,会使负载急剧增加,从而耗尽存储带宽,使系统性能受到严重影响。片上分布式存储系统通过在片内集成大量随核分布的存储控制器,可有效地处理大量并发访存,降低各存储器的负载以缓解“存储墙”问题,因此将成为未来片上多核处理器访存的主要解决方案。 多核处理器在访问分布式的共享存储器时,需要大量的访存消息交互,如传递访存请求与数据等。随着核与存储控制器的数量不断增加,两者间的访存交通也变得越来越复杂。如果管理不当,容易成为新的通讯瓶颈,甚至会引起交通堵塞,严重降低访存性能。因此,需要同时从架构和调度两方面对片上访存交通进行优化,使访存消息在大量计算与存储节点间快速、高效地传递。 本文的目标系统是采用片上分布式存储的多核处理器,核间通过片上网络互连,以访存包交换作为基准的访存消息传输方式。通过分析基准架构与协议下访存性能的影响因素,本文发现访存交通的性能跟数据与线程在分布式存储器与处理器核的映射策略、访存消息的传输协议与模型、片上通讯网络架构三个方面有密切关系。因此,本文将从这三个方面优化访存交通,分别提出数据与线程级、传输协议级和通讯架构级的优化方法: (1)数据与线程级优化:本文对数据与线程的放置策略进行优化,提出三种动态重映射机制。数据迁移与交织允许数据页迁移至页访问中心以缩短访存距离,并在负载过高时启动自交织以均衡负载;数据副本机制允许在多个存储节点建立数据页副本,使读访问得到显著加速;链式线程迁移算法是一种分布式算法,可在线预测线程的访存行为,据此将线程迁移至所需数据附近,使访存交通性能得到提升。 (2)传输协议级优化:本文对访存传输协议进行优化,提出新的传输模型与机制使访存消息的传递更加高效、迅速。首先提出基于代理的访存模型,它通过设立区域访存代理来归并访存操作并优化存储调度,以提升远程访存的性能,并据此提出了静态代理与动态代理两种实现机制;然后提出片上分布式存储的直接访存模型,它使访存消息无需经过复杂的网络协议转换即可完成传输。每个存储接口作为本地核访问其他远端存储接口的代理,使远程访存被虚拟化为本地访存;最后提出一种用于高性能访存的光网络架构与相应的访存协议,名为SAMNoC。SAMNoC中的存储控制器可获得对光网络的自主仲裁权,并使各种类型的包在单独设计的子网络中分别传输,以适应片上访存交通的节点类型与包类型的异构特征。 (3)通讯架构级优化:本文对片上互连架构本身进行优化。首先从分析真实程序的访存通讯特征入手,发现片上访存交通的节点负载、通讯器件的微观状态以及节点收发数量均具有非均匀性。据此,本文对二维片上网络的局部优化目标的选择方法进行研究,提出“潜力优化点”的寻找方法;然后提出邻接网络流调控优化算法,通过相邻路由器间的协同调度来提高网络吞吐量;最后,本文对总线型片上光网络的光电接口架构、网络拓扑、通道仲裁进行改进。 本文构建了基于模拟器的实验环境,使用标准测试程序和综合的访存交通来测试上述优化方法的性能。结果表明:数据与线程级优化方法中,数据迁移与交织、数据副本和链式线程迁移机制可分别降低平均访存延时达26.9%、39.6%和11.0%,并提升系统性能(IPC)达21.0%、30.6%和11.5%;传输协议级优化方法中,静态代理、动态代理、直接访存和SAMNoC的访存延时降低幅度和IPC提升幅度分别为13.3%、19.3%、17.8%、24.0%以及20.5%、27.1%、16.6%、33.0%;通讯架构级优化方法中,基于“潜力优化点”的局部优化效果(性能提升13.8%)优于基于热点的优化效果(性能提升11.2%),而邻接网络流的调控优化可显著提升片上网络的吞吐量,而本文针对总线型片上光网络的优化均获得明显的收益。 本文提出的数据与线程级、传输协议级、通讯架构级优化方法能显著提升访存性能,因此可较大程度地消除访存通讯瓶颈、缓解“存储墙”问题。本文的研究将对多核处理器以及片上分布式存储系统的发展起到推动作用。