热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

超级计算机26010,全球最强超级计算机搭载的SW26010处理器解析

全球最强超级计算机神威·太湖之光搭载的申威26010处理器每片处理器包含4个核心,片上的4个核心通过片上网络互联,并通过PCI-E3.0对外连接,每个核心拥有独立的128位DDR3

全球最强超级计算机神威·太湖之光搭载的申威26010处理器每片处理器包含4个核心,片上的4个核心通过片上网络互联,并通过PCI-E 3.0对外连接,每个核心拥有独立的128位DDR3控制器连接到8GB DDR3-2133内存,这样4个核心一共拥有32GB的DDR3内存。

《超级计算机 26010,全球最强超级计算机搭载的SW26010处理器解析》

《超级计算机 26010,全球最强超级计算机搭载的SW26010处理器解析》

从这里可以看出SW26010实际上类似于用胶水把4个独立的处理器粘在了一起,整合到了一个芯片里面,但是每个核心还是可以独立工作,而且拥有独立的128bit 8GB内存。这样单个核心的内存带宽达到了34GB/s,整个处理器达到了136GB/s,这样设计最大的好处就是每个核心的带宽是完全独享的,缺点是空闲核心的带宽无法共享给其他核心。

其中每个核心包含一个主处理器(MPE)和一个8*8的计算单元阵列(CPEs),主处理器是一个64位的RISC架构核心,用来跑操作系统,并且支持264位的矢量指令集,拥有32KB的L1指令缓存和32KB的L1数据缓存(总共64KB L1 cache),和256KB L2 Cache,应该说这样的缓存配置并不算大,应该是为了节约芯片面积考虑,4个核心的主处理器加起来一共有256KB L1 cache和1MB L2 cache。

计算单元阵列(CPEs)是一个由64个简化的62bit处理器(不是常见的64bit)组成,每个处理器只有16KB的L1指令缓存和64KB本地储存,没有L1数据缓存,并且和主处理器一样支持264位的矢量指令集,单片处理器拥有一共256个这样的计算单元。

于是加上4个主处理器,单片处理器一共拥有260个处理器核心。

《超级计算机 26010,全球最强超级计算机搭载的SW26010处理器解析》

神威·太湖之光的每个处理器卡有两片SW26010处理器,和一共64GB内存,长得像这样,每个处理器算一个计算节点,这样一块处理器卡和intel xeon phi协处理器卡类似,只是intel这样一块计算卡只有区区60个核心,而且不能独立工作,还需要另外购买一个独立的xeon主机作为管理处理器使用。而SW26010处理器集成了管理处理器,可以独立工作,并且单个处理器卡拥有高达520个处理器核心。

《超级计算机 26010,全球最强超级计算机搭载的SW26010处理器解析》

对比一下intel xeon phi计算系统的结构:

《超级计算机 26010,全球最强超级计算机搭载的SW26010处理器解析》

KNC Card就是一块intelXeon Phi协处理器卡,协处理器卡通过PCIE-X16和主处理器相连,其实看上去就像是一台PC上面插着好几块显卡。这样一台PC构成一个计算节点。

对比SW26010处理器的方案,单个节点来看,一块SW26010的核心数量和一台带有4块xeon phi计算卡的功能相当。Intel方案的麻烦在于,这样一个计算节点的功耗和体积远远大于SW26010,而且intel主处理器内存和协处理器卡的内存是分离的,需要先将要处理的数据通过PCI-E x16传输至计算卡内存,然后计算卡才能计算,最后将结果通过PCI-E x16读回主处理器,这样一来一回的性能损失很多时候远大于计算卡带来的好处。

SW26010的主处理器和协处理器的内存是共享的,这样无需来回从协处理器倒腾数据,而且可以实现类似AMD APU的统一内存寻址,大幅度提高了协处理器的使用效率,从这点来说SW26010的方案是优于intel方案的。

从单个核心对比来看,Intel的phi协处理器据说是基于最早的奔腾x86方案改进而成,多了一个512位的矢量处理器,而SW26010只有264位的矢量处理器,phi拥有32KB的L1指令缓存,32KB的L1数据缓存和512KB的L2 缓存,对比SW26010的协处理器只有16KB的L1指令缓存和64KB的本地存储,而且intel的phi核心可以支持4个物理线程,也就是超线程技术,单纯从技术来讲,intel的phi处理器拿出来单挑应该可以吊打单独的SW26010的计算核心。

理论性能可以看出,单个intel的phi处理器是高于SW26010的计算核心,得益于超宽的512位矢量处理器(VPU),intel phi上的处理器每个时钟可以执行16个单精度运算或8个双精度计算,而SW26010上的计算核心只有一半的宽度,所以最多也就8个单精度和4个双精度,不过SW26010的核心频率是1.45GHz,要比intel phi的1.3GHz稍高,但是这样也很难追平intel的单个核心的理论性能优势。

但是光比理论峰值性能是没有什么意义的,SW26010的VPU虽然比intel phi的宽度小,但是264bit的宽度而不是256bit的宽度可以提供比intel的单双精度浮点更高的计算精度,单精度浮点可以比intel的高一倍,而双精度可以高4倍,这在科学计算中是能够获得更大的优势,而且intel的512bit宽度的矢量运算需要更多的数据来填饱它,加上需要用PCI-E传输数据的瓶颈,大部分时候也只能挨饿,而SW26010可以直接访问主存,因此在实际使用效率上不见得就会比intel phi低多少,并且某些应用场合甚至可能大幅度超过intel。


推荐阅读
author-avatar
biosan
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有