英特尔和北卡罗来纳大学的研究人员将CPU内核之间的数据交换速度提高了2到12倍


第七代Intel Core处理器(以前的代号为Kaby Lake)的拓扑结构,将于2016年底上市。照片:英特尔

来自北卡罗来纳大学和英特尔的研究人员团队开发了CAF(核心到核心通信加速框架)技术,该技术可以显着加速处理器内核之间的数据交换。通过消除这一瓶颈,制造商最终将能够增加CPU中的内核数量,而无需增加它们之间的服务流量。

在并行程序的实现中,最困难的事情是确保进程之间共享的资源的正确协调。在现代处理器上,内核之间的并行交互的同步是通过两种方法实现的:使用消息传递和通过共享内存。

在第一种情况下,在每个内核上启动一个单线程进程,该进程与在其他内核上运行的其他进程交换数据。

通过多处理器系统的每个处理器上的共享内存进行交互时,将启动属于一个进程的执行线程。流通过此过程共有的一部分内存交换数据。线程数与处理器数相对应。

研究人员建议实施这种资源协调在硬件层面。在准备好的科学著作摘要中,他们指出“通过共享内存本质上的交互涉及到维护一致性和高速缓存未命中的障碍,这大大增加了开销并产生了大量的[过量]网络流量。”

许多重要任务要求内核之间进行大量流量交换,因此开销的显着增加会给性能带来巨大损失。这也适用于计算管线的性能,该性能已在软件解决方案中广泛用于命令级别的并行操作。

硬件加速可协调并行计算中内核的工作。所提出的硬件核心协调比当前使用的任何软件同步方法高效得多。北卡罗来纳大学电气与计算机工程学教授,研究合著者Yan Solihin 说:

“这种方法,我们称为CAF 框架,用于加速内核之间的通信,可以将数据传输提高2到12倍。” “换句话说,从头到尾的执行速度至少是其两倍。”

在准备的科学工作中,作者对开销(内核之间的网络流量过多)进行了分析,该开销是在将并行计算与现有软件方法同步时发生的。他们提出了另一种解决方案。

新框架的关键要素是队列管理设备(QMD)队列管理硬件模块。它能够执行简单的计算功能,并且硬件连接到通信子系统,即NoC(芯片上的网络- 处理器内部的微型Internet)。


从文章插图“ 片上网络-在处理器内的迷你上网

QMD模块承担着管理队列和同步内核并行交互的任务,而无需在CPU内核上添加任何其他软件指令。它就像网络上的硬件路由器。

鉴于现代处理器内核的不断增加,未来的发展非常重要。这是一个完全自然的过程,因为由于自然的物理限制,时钟速度几乎停止了。制造商别无选择,只能并行计算。

在这种情况下,内核之间并行交互的同步成为限制系统性能的瓶颈。借助处理器内核之间的有效流量路由,您可以继续扩展CPU体系结构,并创建具有数十个或数百个内核且具有几乎线性的性能扩展的处理器。内核之间的有效流量路由是进一步扩展多核CPU架构所需的一项关键技术。

除了在同步并行计算的同时重复加速内核之间的数据交换外,QMD模块还可用于聚合来自多个内核的数据。研究人员认为,它将使某些基本计算操作的处理速度提高15%。

将于2016年9月11日至15日在以色列海法举行的第25届并行架构和编译方法PACT '16大会上将发表 科学作品“ CAF:核心对核心通信加速框架 发明人是王一鹏(北卡罗来纳大学),王仁,安德鲁·赫德里奇和詹姆士·蔡(均为英特尔公司),也是科学著作的主要作者-上文所述来自北卡罗来纳大学和美国国家科学基金会的Yan Solihin。 该文章已包含在《2016年并行架构和编译国际会议论文集》中



,第351-362页,doi:10.1145 / 2967938.2967954。报告的收集可能会分发给会议参与者并在Internet上发布。

Source: https://habr.com/ru/post/zh-CN397275/


All Articles