高性能计算处理器进展

2013-11-16 06:52季冬
中国教育网络 2013年11期
关键词:功耗高性能英特尔

文/季冬

如何从软件和硬件两个方面来实现一个可靠和稳定的高性能计算机,是当前面临的主要问题。

HPC关键挑战

当前高性能计算领域发展面临如下关键挑战:

1.系统规模持续增大,系统功耗成为制约系统发展的主要瓶颈。例如,在去年SC12上发布的TOP500排名中,世界第一快的高性能计算机Titan包括56万多处理器核,功率达到8.2MW(兆瓦)。如果按照Titan机器外推,未来的艾级(Exa-Scale)超级计算机的功率将达到300MW,每年的电费就需要大约3亿美元。然而,美国能源部目前给高性能计算机设计人员提出的目标是,在20MW功率限制下实现艾级计算机。

2.系统可靠性和可用性。随着系统规模持续增大,整机的平均无故障时间变得越来越小,如何从软件和硬件两个方面来实现一个可靠和稳定的高性能计算机,也是当前面临的主要问题。

3.应用程序的可扩展性。目前硬件已经发展到很大规模,但是大量的科学应用程序还很难扩展到如此大规模的系统,如何优化当前重要的科学计算程序,使之扩展到大规模系统,同时开发支持大规模系统的性能分析和正确性调试软件也是当前亟待解决的问题。

如果让传统的程序充分利用GPU加速设备,需要使用CUDA编程接口把程序中计算密集部分重新改写,这无疑给传统程序移植到GPU设备带来很多挑战。

主流解决方案

为了解决高性能计算机系统功耗面临的挑战,国际上目前主流的技术是采用通用处理器和加速部件混合的架构来提高整机的性能功耗比。在通用处理器方面,英特尔的至强处理器系列、IBM的Power处理器系列和AMD的Opteron系列是高性能计算机采用的主流处理器,在体系结构方面变化很少。

然而在加速部件上,却存在很大的变化。Nvidia公司在几年前发布的基于Fermi架构的图形处理器,由于其在性能功耗比方面比通用处理器表现出了更好的性能,目前已经大量地应用在高性能计算机上,例如Titan高性能计算机和中国的“天河一号”都采用了Nvidia的图形处理器。2012年,Nvidia又发布了基于Kepler架构的图形处理器,在性能方面都有了显著提升。英特尔公司在加速部件方面也不甘落后,在SC12上,英特尔公司首次官方发布了众核协处理器Xeon Phi。在2013年中发布的TOP500中,排名第7的Dell公司研制的Stampede超级计算机就采用了最新的Phi处理器。本文重点分析下英特尔这款众核处理器Phi。

Phi是基于英特尔的众核集成体系结构设计(Many Integrated Core,MIC),最新发布的Phi处理器有两个版本:Phi 3100和Phi 5100,都是采用英特尔最新的22纳米工艺。Phi5100包括61个处理器核,支持320GB/s的内存带宽,8GB的GDDR-5内存。每个核的处理器频率在1GHz左右,每个核都具有32KB L1指令Cache,32KB L1数据Cache和512KB的L2 Cache,Cache之间支持一致性协议。每个处理器核包括4个硬件的线程,总共有244个硬件线程。所有核之间通过一个支持双向通信的环(Bidirectional Ring)连接在一起,内存控制器均匀地分布在双向环上。Phi协处理器通过PCI-E总线连接在服务器上,通过PCI-E和系统的处理器之间进行通信。在Phi协处理器上,运行一个单独的操作系统,管理协处理器的各种硬件资源。

由于目前广泛使用的Nvidia GPU在编程模型上主要采用CUDA编程接口,如果让传统的程序充分利用GPU加速设备,需要使用CUDA编程接口把程序中的计算密集部分重新改写,这无疑给传统程序移植到GPU设备带来很多挑战。对于英特尔的Phi协处理器,目前它支持多种编程模型。首先,传统的基于MPI、OpenMP、Pthread等编程模型的并行程序可以无需任何修改直接运行在Phi处理器上。这种方式可以大大减少传统程序移植到Phi加速部件的时间。其次,它支持对称运行模式,即主机处理器和Phi协处理器同时执行并行程序的模式,例如一个并行的MPI程序可以同时在主机和协处理器上执行,这种模式可以充分利用主机处理器资源和协处理器资源。最后,Phi还支持英特尔提供的专有Offload编程模型,即仅仅把程序某部分计算模块在Phi处理器上运行,其余部分仍然在主机运行。该种编程模型需要用户修改原有程序,明确需要在主机和协处理器之间传入和传出的变量。此外,Phi协处理器还提供了512位向量处理单位,最多可以同时处理16个单精度或者8个双精度运算。充分利用Phi处理器上的向量处理单元是提高程序性能的一个主要因素。

HPC处理器发展趋势

通过对当前的高性能计算机分析,我们可以看出,在高性能计算领域处理器的发展存在如下趋势:

1.为了提高高性能计算机整机的性能功耗比,采用通用处理器和加速部件的混合架构成为未来发展的主要趋势。加速部件处理器的核心相对简单,比通用处理器可以提供更高的性能功耗比。

2.加速处理器的核心数目增长迅速。目前英特尔Phi处理器最多包括61个核,244个硬件线程,Nvidia最新GPU已经有1000多个核。面对如此多的处理器核心,如何充分挖掘应用程序中的并行性,有效利用这么多的处理器核,是硬件设计人员给软件开发人员提出的主要挑战。

3.基于混合模型的高性能计算机对应用程序的移植和优化提出新的挑战。一般加速部件的编程模型也相对复杂,在程序的性能分析和性能优化方面给程序开发人员提出了很多要求。尽管英特尔的Phi处理器在编程上尽量和传统通用处理器的编程保持兼容,但为了获取更好的性能和充分发挥硬件性能,一定的性能调优仍是必须的。

在解决处理器性能功耗问题方面,我们国家也开始了很多自己的研究工作。由于通用处理器在计算某类具体应用程序时,芯片里面很多功能部件处于闲置或者空闲状态。如何针对特定应用程序设计定制的处理器,删减不需要的指令和功能部件,这样可以大大提高处理器的性能功耗比。清华大学在研制针对特定应用程序定制处理器方面已经开始了一定的前期工作。目前主要针对天气预报程序定制高性能计算机处理器,从而提高高性能计算机的性能功耗比。

猜你喜欢
功耗高性能英特尔
基于任务映射的暗硅芯片功耗预算方法
英特尔发布第三代英特尔至强可扩展处理器
英特尔携手一汽集团,引领汽车行业全新变革
揭开GPU功耗的面纱
一款高性能BGO探测器的研发
英特尔召回
高性能砼在桥梁中的应用
数字电路功耗的分析及优化
一种面向星载计算机的功能级功耗估计方法
SATA推出全新高性能喷枪SATAjet 5000 B