近日,英特尔软件开发会议上周在伦敦召开,英特尔高管解释了英特尔Xeon Phi为什么现在成为了处理器,并介绍了Knights Landing,其是英特尔下一代众集成核(Many integrated core)处理器之一,会后记者采访了英特尔的并行编程和高性能计算工具项目主任和推广者James Reinders。
Reinders谈到名为Knights Landing的下一代Xeon Phi,Knights Landing是英特尔的MIC(英文众集成核的缩写)处理器之一,为高性能并行编程而设计。
第一个名为Knights Corner的Xeon Phi芯片是2012年发布的,最多可容 61个内核。世界上最强大的超级计算机中国天河二号装了48000个Knights Corner芯片。
Knights Landing最多可容72个芯片,而另外一个显著不同的地方是,新的Xeon Phi是一个处理器,而不是一个协处理器。协处理器使用的是主机/设备的编程模型,应用程序在主机(CPU)上运行,会将计算密集型的任务发到设备(协处理器)上处理,这样做以后存在大大提升速度的潜力,NVIDIA的Tesla系列GPU加速板(世界上第二强大的超级计算机天河装了这些芯片)采用的也是这种模式。
英特尔并行编程和高性能计算工具项目主任和推广者James Reinders
处理器与协处理器的比拼
记者想知道英特尔为什么现在改变了做法,英特尔的Knights Corner走的是协处理器路线。Reinders表示,“其中的一个考虑是软件,Knights Corner是个协处理器,和当时的业界人士的状态相符。另外也有一点历史的因素。该芯片的设计源自Larabee项目。Larabee项目原本是为另一个产品设计的,但我们并未将产品推向市场。我们推出一个协处理器可以快一些,当时是权衡了设计上的各个因素。”
他表示,“利用协处理器可以更好地控制生态系统:对于在协处理器上运行的东西,我们都可以控制。主机是标准的。我们当时对于如何在处理器上应付512比特的向量未有足够的了解。”
他还提到,“就我个人而言,我会着手处理这个协处理器,看看我们如何利用它,但我对于Knights Landing有些等不及了。”
从程序员的角度来看,为处理器编代码要更容易一些,因为不用担心主机/设备边界的事。Reinders表示,“协处理器有一个很大的问题要处理,控制程序已经拥有数据,但要将其送到协处理器上。内存上有两倍的花费。主机上的内存用来存储数据,然后将数据转到卡的内存里。”
他还表示,“另外还有一件事,就是将构件整合到组件包里。Knights Landing是我们第一个这样做的处理器。然后再在构件上降低延迟,进而就可以扩大规模。”
超级计算机要花很多时间分析庞大的数据集。随着物联网传感器提供越来越多的数据,这一趋势会持续。Reinders表示,“我们将Xeon Phi转成一个处理器,Xeon Phi不再是一个协处理器。这样它就可以将我们处理海量数据的能力释放出来。由于处理器本身的构造,利用它们构建的机器可以拥有任意大的内存。”
与基于GPU的竞争对手比,英特尔Xeon Phi的内核数目要少得多,但每个内核却更强大。Reinders称,“这是计算机结构上的一个经典问题。是用一些什么都做得不错的大型内核,还是用一堆小一些的内核?我们采用的方式是兼容二者。”
三年多的发展,从61个内核增到仅仅72个内核,似乎有些令人失望,但Reinders表示,内核数目不是唯一重要的事情。“业界人士能搞清楚怎么获得3倍的并行性?抑或是我们成了处理器对他们更好一些?处理器的运行时钟频率更高一些,具有高带宽的内存,还可以提供非顺序执行及加速每个线程的体验。这些是我们在权衡各种因素后作出的设计。”
英特尔原来承诺在2015年推出Knights Landing。那Knights Landing什么时候可以推出呢?Reinders 告诉记者,“我们已经推出了三个系统。Cray那一个,桑迪亚国家实验室和法国CEA各一个。这些系统是在A0(入门第一级)芯片上的。新年开始后将渐渐加大制作进入产品线。我们没有说什么时候可以全面推出产品。”
Fortran语言为什么在做超级计算时特棒
超级计算和并行编程不只是硬件的事。要出结果意味着要写经过特别优化的代码,过去的经验证明,要做到这一点是个颇为困难的事。投到Fortran语言靡下来吧。Reinders表示,“虽然计算机科学可能已经放弃了Fortran语言,但它扔推动着科学界前进。Fortran语言是一个非常好的科学编程语言。Fortran已经成长了,一些对它不利的观点已经被纠正。”
他对Coarray Fortran语言非常地狂热。Coarray Fortran是一个并行计算编程语言。他表示,“我认为Coarray Fortran语言是仅有的几个PGAS(分割全局地址空间)技术之一。这些技术很受欢迎,有一定的受众,在Cray Aries构件里特别流行。Cray Aries构件的延迟非常低。程序员要将数据搬移到不同的地方,是件痛苦的事。所以需要找个办法确保别移动得太多。我见过用Coarray的Fortran写的程序,写得很漂亮。这东西不是每个人都用得到,也不是每个程序都用得到,但用得到的时候就有用,比如要与远程内存对话时,这东西就可以提供新的机制,以确保不会经常这样做。”
Xeon Phi走处理器路线的一个后果是,它与至强的界限不那么明显了。至强是英特尔的主流高端处理器品牌。Reinders表示,二者最终可能会合为一体。他表示,“Xeon Phi的最大竞争者是我们自己的至强。我们取这个名字是故意的,就是要反映出二者之间的模糊界线。我不能保证,20年或30年以后二者仍然是两个不同的产品。”
声明: 此文观点不代表本站立场;转载须要保留原文链接;版权疑问请联系我们。