
导读:近期,中国人民银行印发《金融科技(FinTech)发展规划(2019—2021年)》,提出要“加快扭转关键核心技术和产品受制于人的局面”。为此,本文主要从安全可控的角度,分析国产CPU的技术发展及其服务器产品的优缺点,探索在银行的适用场景及未来发展方向。
我国对国产CPU的研发支持始于上世纪90年代的“泰山计划”,由于种种原因,该计划不幸夭折。近年来国家对CPU的重视和发展的里程碑是在2001年5月,中科院计算所成立龙芯课题组,自此,我国开始了国产CPU的艰难探索之路。之后,国内还相继成立了诸如上海兆芯、成都申威、天津飞腾、华为海思、中科海光、中晟宏芯、展讯、小米、华芯通、紫光、北京君正等厂商公司,其中目前发展态势较好且可以应用在服务器领域的主要是龙、兆、飞、申威、海思和海光六大国产CPU。

国产CPU发展史
我国目前的CPU架构大致可以分为以下五个体系:MIPS体系、x86体系、Power体系、ARM体系、Alpha体系。在服务器CPU市场上,x86架构的处理器占据了超过90%的市场份额,MIPS、Power、Alpha已经不是主流,主要市场为移动芯片领域的ARM架构也开始由海思带到服务器领域。

目前,国产CPU主要应用在军工、航天、政府等特定领域。在银行业,目前主要采用的服务器是IBM的Z系列、Power系列和基于Intel的x86服务器系列,国产CPU及其服务器还鲜有踪迹,但部分厂商的产品已经开始在银行的大数据、云计算等领域试用,未来大有发展前景。
一)龙芯

龙芯3号芯片(图片来源:龙芯官网)
龙芯源自龙芯中科技术有限公司,是中国科学院计算所自主研发的通用CPU,采用MIPS架构,已永久买断了MIPS指令的使用授权,并拥有自行扩展指令集的权利。由于MIPS公司被收购并发展缓慢,实际上龙芯已成为MIPS架构的代表。在十几年的发展中龙芯对指令集进行了相当大的扩展,发展出了自己的指令集loongISA。
目前龙芯主推的龙芯3号系列为64位多核处理器,主要面向桌面和服务器等领域。其中,3B3000面向的是服务器版本,支持双路及多路互连系统。龙芯3B系列是8核处理器,支持向量运算,峰值计算能力可以达到每秒1.28*1000亿次运算,适用于高性能计算机和高端的服务器领域。
在软件生态方面,龙芯支持自主研发的loongnix、国产中标麒麟操作系统以及Reworks嵌入式操作系统。在应用软件方面,支持金山WPS文字处理,JAVA和Flash,火狐浏览器和Chrome浏览器,达梦、金仓、神州通用数据库,东方通、金蝶、中创中间件,中软政务处理系统等,主要针对有信息安全要求的党、政、军、国企、事业单位办公电脑和服务器市场。二)兆芯

开胜KH-30000系列(图片来源:兆芯官网)
2013年,上海市国资委、台湾威盛电子合资成立上海兆芯集成电路有限公司,其中上海市国资委占股80%,威盛(VIA)的Cyrix和S3原班人马都加入了兆芯。CPU采用x86架构,技术从台湾威盛引进。开胜KH-20000系列8核处理器是其2018年推出的面向服务器领域的处理器,是国内首款支持双通道DDR4内存的产品。兆芯在今年又推出了KH-20000系列的升级产品——KH-30000系列处理器,这款处理器单芯片内存吞吐提高了50%,单路内存最高支持128G,是业内首款完整集成CPU、GPU、芯片组的SoC单芯片国产通用处理器,这为整机系统的开发和成本控制提供了便利。目前兆芯处理器可以满足绝大多数领域的办公应用,主要应用于铁路基础设施、轨道交通、金融、电力、军工、保密和国密等领域。三)申威

申威26010(图片来源:申威官网)
申威系列处理器依托总参谋部第五十六研究所(无锡江南计算技术研究所),由成都申威科技有限责任公司生产,架构来源于美国DEC公司的Alpha21164。目前Alpha已经被束之高阁,指令集和微结构都已经不再更新,技术专利大多已过期或快过期了。申威是目前Alpha阵营中仅存的硕果,拥有自主扩展指令和发展路线的自主权。
申威目前已经形成了高性能计算处理器、服务器/桌面处理器、嵌入式处理器三个系列的国产处理器产品线。目前主流处理器是申威第三代产品——申威64,面向低端服务器市场。面向中高端市场的产品是申威1621处理器,采用对称多核结构和SoC技术,单芯片集成了16个64位RISC结构的申威处理器核心,目标设计主频为2GHz,集成八路DDR3存储控制器和双路PCI-E3.0标准I/O接口,是申威在服务器领域的代表产品。目前申威处理器专注于涉及国家安全的超算领域,2017年 “神威·太湖之光”超级计算机系统登顶全球超级计算机500强榜首。在民用市场,基于申威CPU的产品在市场化方面遇到软件生态贫乏和产业联盟弱小导致产品缺乏市场竞争力的困境,很难看到申威的身影。四)飞腾

飞腾FT-2000+/64(图片来源:飞腾官网)
飞腾处理器由天津飞腾信息技术有限公司研发生产,该公司2014年成立,主要股东为国家超级计算天津中心、滨海新区及中国电子,采用ARM架构。目前的主要产品为FT-1500和FT-2000系列,其中FT-2000系列处理器芯片集成64个自主开发的ARMv8指令集兼容处理器内核FTC662。在ARMv8指令集兼容的现有产品中,FT-2000+/64在单核计算能力、单芯片并行性能、单芯片cache一致性规模、访存带宽等指标上处于国际先进水平。FT-2000+/64主要应用于高性能、高吞吐率服务器领域,如行业大型业务主机、高性能服务器系统和大型互联网数据中心等。整体而言,飞腾处理器主要应用于党政办公系统、基础设施关键行业信息系统、云计算与大数据平台、工业控制系统和超级计算机(天河二号)等多个领域。五)海思

鲲鹏920处理器(图片来源:海思官网)
2004年,华为成立深圳市海思半导体有限公司,开始与ARM公司展开合作,获得了ARMv8系列处理器核心架构授权,先后推出了智能手机处理器K3、存储型处理器Hi1610、鲲鹏916服务器处理器。2019年1月,海思发布鲲鹏920处理器。
鲲鹏920处理器为64核ARM处理器,采用7nm制程工艺,主频2.6GHz,支持8个内存通道,16个内存插槽,可以实现双路服务器支持。相比传统x86架构,它优势主要体现在计算效能上,在同等或者更高性能的条件下,功耗降低了20%~30%。同时根据第三方数据显示,鲲鹏920的SPECint性能(CPU整数处理能力的计算机基准规范)超出业界标杆25%,能效比优于业界30%,是目前业界基于ARM架构的性能最高的芯片。在应用方面,主要聚焦大数据、分布式存储、数据库、ARM原生应用和云服务五大应用场景,在云计算领域表现优越。基于鲲鹏处理器的 TaiShan服务器正在逐步推广,目前已在华夏银行等金融客户有实际应用。六)海光

海光高性能7X00系列处理器(图片来源:海光官网)
海光(Hygon)处理器由天津海光(中科曙光控股公司)与AMD的合资公司生产推出,采用x86架构。AMD公司于2016 年向天津海光THATIC 授权了其 x86 和 SoC IP 芯片的开发权限。据协议,海光能够用上基于 AMD Zen 架构设计的定制处理器,该架构也是 AMD 锐龙(Ryzen)和霄龙(EYPC)处理器的基础设计。海光x86处理器基于中国SM2/3/4算法(中华人民共和国国密GM/T 0002/0003/0004标准),研发了处理器内部虚拟机安全保护技术和内存加密技术阻止任何未经授权的存取,避免了后门的威胁及类似Intel ME的潜在风险。相比一般的处理器,海光的内存带宽和内存容量更大。每个处理器集成8通道DDR4内存控制器,双路可达16个DDR4 DIMMs,支持高达2T内存/插槽,提供多达128个PCI Express 3.0 通道,满足内存扩展和存储敏感的计算需求。海光高性能x86处理器系列面向服务器市场,产品线相对更加完善,生态迁移性好。目前基于海光x86处理器的服务器正在各银行进行环境测试和应用测试。
一)龙芯
龙芯处理器核心数较少,缓存较低,不支持超线程,处理器主频较低,支撑能力较通用x86 CPU具有较大的差距。最重要的一点在于龙芯处理器采用的MIPS指令集,与通用x86架构服务器并不互相兼容,需要构建自身的生态系统。二)兆芯
兆芯处理器采用x86架构,核心数较少,缓存较低,主频的支撑能力较弱,内存通道数较少,较海光的x86 CPU也具有明显的差距。虽然提供虚拟化支持能力,但是在云计算/虚拟化应用场景适应能力较弱。此外,兆芯的技术来源——威盛的X86架构技术授权已于2018年4月到期(不能使用 2018 年 4 月后新的技术成果),后续发展阻力增大。三)申威
申威处理器采用Alpha架构,核心数较多、主频较高,单核计算性能较低,不支持虚拟化,整体操作系统、数据库、中间件的生态支持能力较差。对于成熟的金融行业而言,采用兼容性差且架构与X86架构完全不同的服务器运行业务系统,承担的风险较高。四)飞腾
飞腾处理器采用ARM v8架构,单核计算性能较低,并且在虚拟化的支持上,硬件CPU的支持能力比较一般。整体操作系统、数据库、中间件的生态支持能力较差,与申威相似,对于成熟的金融行业而言,难以采用兼容性差且架构与X86架构完全不同的服务器运行业务系统。五)海思
鲲鹏系列处理器采用的是ARM架构,核心数较多、主频较高,但是,由于采用的RISC架构的指令集,所以对于原有X86生态的系统软件、数据库、中间件等都具有较差的兼容性,而且目前主流的业务开发软件厂商、数据库厂商、中间件厂商对于ARM的产品定位也是属于非服务器序列,因此支持程度较差。目前支持海思CPU的主要是华为自身的软件生态及部分国产厂商(如中标麒麟)。六)海光
海光处理器采用x86架构,相比其他处理器的优越性主要体现在海光的本土化和生态性。由于采用AMD的x86技术,生态上基本能承载银行常用的、原先运行在Intel服务器上的操作系统、中间件、数据库等软件运行。但海光处理器不足之处在于只支持单路和双路服务器,而银行现有的主流服务器四路服务器,在可扩展性方面会稍逊一筹。此外,由于海光也被纳入到美国的实体清单,未来技术发展不能再依靠AMD授权,只能在目前技术基础上,逐步走上自主道路,难度较大。七)各厂商面向服务器的典型处理器规格对比
厂商 | 龙芯 | 兆芯 | 申威 | 飞腾 | 海思 | 海光 |
型号 | 3B3000 | KH-30000 | 申威1621 | FT-2000+/64 | 鲲鹏920 | 高性能x86系列 |
架构 | MIPS | x86 | Alpha | ARM | ARM | x86 |
核心数 | 4 | 8 | 16 | 64 | 64 | 4-32 |
字长 | 64 | 64 | 64 | 64 | 64 | 64 |
制程工艺(nm) | 28 | 16 | 28 | 16 | 7 | 14 |
主频(Ghz) | 1.45 | 2.7 | 2.0 | 2.0-2.3 | 2.6 | 2-3.6 |
缓存(MB) | 8 | 8-12 | 32 | 32 | 46 | 64 |
功耗(W) | 30 | 70 | 90 | 100 | 180 | 180 |
表格提供了影响处理器性能的主要参数的对比,从架构层次来看,采用x86的兆芯和海光的生态兼容性最佳,其他的厂商需要构建自己的生态系统。从核心数层次来看,飞腾、海思的核心数为64核,海光核心数最多32核,考虑到单核性能和核心数的差异,在整体性能上差距不大。龙芯、兆芯、申威的核心数较少,在性能上会有一定差距。从主频的角度去看,龙芯、申威、飞腾的主频数都较低,数据处理能力较差。从缓存的角度来看,华为和海光的缓存数较高,数据交换速度更快,整体性能也更好。总体而言,华为海思的鲲鹏系列处理器与海光高性能x86系列处理器在整体性能方面要优于其他国产厂商。
高性能、安全可控、完善的生态是银行业服务器国产化替代的三个关键因素。从银行业服务器国产化替代的三个关键因素来看,华为海思和中科海光在整体平衡度上较好,可以作为银行业服务器未来国产化方向的两个选择。

在鲲鹏920的基础上,华为推出了面向均衡服务器的TaiShan 22080、存储服务器的Taishan 5280/5290以及面向高密度服务器市场的TaiShan X6000,主要面向大数据、分布式存储和ARM原生应用等场景,为企业构建高性能、低功耗的计算平台。鲲鹏920面向大数据等应用进行了优化,极大地提升了性能。华为TaiShan系列服务器,通过优化分支预测算法、提升运算单元数量、改进内存子系统架构等一系列微架构设计,大幅提高处理器性能,为系统运行提供了高效可靠的计算底座。据华为资料,TaiShan服务器的性能显著,在大数据方面,集群性能提升 30%,编码速度提升 10%,加解密性能提升 30%;在分布式存储方面,存储性能提升 30%,压缩/解压时间减少 66%;在高性能计算方面,CAE/CFD、气象和基因仿真性能提升 20%,支持全密闭式机柜级液冷,冷却PUE小于 1.15;在数据库方面,QPS性能提升 53%,TPS性能提升 35%。2019年7月,浙江移动营业厅前台系统成功迁移至基于鲲鹏920的华为TaiShan服务器的案例足以说明,鲲鹏处理器在计算性能和稳定性等方面已经达到了比较高的水准。华为目前面临的困难是生态圈需要自己拓展,但由于华为自身生态有较成熟服务器硬件及虚拟化、数据库等软件系统,可以通过调优达到最佳性能,所以如果采用华为的FusionSphereOpenStack、fusioninsight、Gauss数据库等产品,其性能不亚于采用IntelCPU的服务器,比较适用金融场景需求。
在银行业,大部分银行均已开展测试,其中华夏银行已完成测试及采购,将在大数据、云平台等环境进行大规模部署。
二)基于海光CPU的曙光服务器
曙光服务器已经实现单双路量产,包括基于HYGON7100芯片的双路服务器H620/H610、单路服务器H320和基于HYGON 3100芯片的H210服务器。曙光H620服务器和H320服务器为金融行业主推机型。其中H620作为主流的双路机架式服务器,最大计算核心可达64核,有32个内存插槽,最大可扩展至4TB内存,I/O扩展方面支持128PCIe通道,支持多种网络,在性能和功耗之间达到了比较好的平衡,实现了高效计算和绿色节能。曙光服务器其良好的生态支持性能保障了平台的适用性和数据库的兼容性,能够满足银行现有应用场景需求,也适用于银行云平台、微服务、分布式等新型技术架构。目前已在多家银行进行测试。但目前基于海光的曙光服务器仅有单/双路配置,尚无银行主流的四路服务器产品,其应用场景会受一定的制约,不适用于对于单机性能要求高的场景。
目前国产CPU发展概况不一,相比国外产品仍然有一定差距,但是这种差距正在逐步缩小,虽然难度还是很大,但已经看到了希望。在众多国产服务器CPU中,目前海思和海光比较适合银行场景。银行可以将基于海思的服务器应用于基于华为生态的系统,如华为的大数据、云平台等场景,后续根据其ARM生态发展,逐步扩大应用场景;可以将基于海光的服务器,在经过兼容性测试后,先应用于管理类系统及进行了微服务、分布式或集群的信息系统,后续视其x86授权及自主发展的情况逐步扩大使用范围。
总而言之,推进银行服务器CPU国产化,需要CPU厂商和银行共同努力,虽然任重而道远,但只要大家目标一致,互相支持,实现《金融科技(FinTech)发展规划(2019—2021年)》提出的“加快扭转关键核心技术和产品受制于人的局面”可期。
参考资料:
[1] 宪瑞.兆芯详解国产X86处理器:性能提升50% 能效比提升2倍
http://news.mydrivers.com/1/632/632390.htm,2019-06-20.
[2] 李倩.天津飞腾展示四款处理器芯片——FT-1500系列和FT-2000A系列
http://m.elecfans.com/article/675701.html,2018-05-11.
[3] 赵巧敏.IT 软件:国产化进程加速,自主可控迎来布局良机
http://www.sohu.com/a/248702372_620847,2018-08-18.
[4] 扫地聖.国内CPU的发展现状
https://blog.csdn.net/Lq19880521/article/details/81840993,2018-08-19.
[5] changbin.中国国产CPU研发现状
http://blog.bytemem.com/post/china-cpu-development,2019-07-26.
[6] 陈姝.华为发布“鲲鹏920”芯片以及基于该芯片的TaiShan服务器
http://sz.people.com.cn/n2/2019/0108/c202846-32504753.html,2019-01-08.