国产信创服务器是近些年信创突破的重点,面对技术封锁和卡脖子限制,如何实现真正的芯片自主可控也是业界发力的方向。近期华为鲲鹏9000s系列芯片的发布让大家眼前一亮,似乎面对芯片的技术封锁打了一场漂亮的翻身仗。那么在服务器市场国产CPU发展如何,主流的信创服务器有哪些产品,性能表现如何,本文将简单介绍,并结合信创服务器的性能对比测试进行分析。
CPU(中央处理器)作为计算机系统的运算和控制核心,是信息处理、程序执行的最终执行单元,主要功能包括指令控制、操作控制、时间控制和数据加工。CPU内部通常由三个主要部分组成:运算器、控制器和寄存器。
此外,CPU内部还有高速缓冲存储器(Cache)等组件,用于提高数据和指令的访问速度,降低内存访问延迟。
CPU指令集是计算机中计算和控制计算机系统的所有指令的集合,包含了基本数据类型,指令集,寄存器,寻址模式,存储体系,中断,异常处理以及外部 I/O。简单地来说,指令集一般被整合在操作系统内核最底层的硬件抽象层中,属于计算机中硬件与软件的接口,它向操作系统定义了CPU的基本功能。
现阶段CPU指令集分为CISC(复杂指令集)和RISC(简单指令集)两种。
CISC和RISC指令集对比如下表所示:
CISC和RISC发展到现在无论哪一方都没有绝对的优势和劣势,在阵营上CISC以Intel、AMD的X86架构为代表,RISC则以ARM、MIPS、PowerPC等架构为代表。从硬件和性能角度分析,有以下不同:
随着后续技术和生态的发展,CISC和RISC也逐渐走向融合,以X86架构CISC处理器占据了个人PC市场,以ARM架构RISC处理器占据了移动端市场,并随着云计算市场的发展,ARM架构RISC处理器也向服务器市场扩张。
国产CPU发展一路坎坷,尤其是最近十年来国外的技术封锁以及芯片工艺上的限制,形成了代差。但随着近期华为鲲鹏9000s系列的发布,这种芯片上的技术封锁被打破,芯片上的自主可控带来了惊喜。国产CPU的飞速发展自十五期间的泰山计划开始,到2018年前后的国外芯片技术限制后的政策支持,形成了以海光、兆芯、飞腾、鲲鹏、龙芯、申威为代表的国产六大CPU厂商。
当前主流的芯片架构为X86和ARM,均为国外主导。对指令集的掌控程度决定了国产化的程度,国产CPU通常通过授权或者自研的方式,有以下三种模式:
可以看出,在自主可控程度上是龙芯和申威>飞腾和鲲鹏>海光和兆芯。
经过多年发展,国产CPU初步形成六大厂商齐头并进的格局,以鲲鹏、飞腾、龙芯、兆芯、海光、申威为代表,一批优质国产CPU企业快速崛起。
综合比较六大国产CPU厂商:1)在性能方面海光系列的X86架构和鲲鹏系列的ARM架构占据优势;2)在生态方面,海光和兆芯基于X86指令集具备生态优势、飞腾和鲲鹏为代表的ARM架构正在构建自己的生态、申威和龙芯由于自研指令集生态扩展上不具备优势;3)在指令集自主可控上,申威和龙芯自研指令集>鲲鹏和飞腾基于ARM的指令集授权>海光和兆芯基于X86的IP授权。
在国内信创服务器领域,以海光为代表的X86架构和以鲲鹏为代表的ARM架构占据了绝对的份额。鲲鹏和海光占据性能优势,在电信、金融等行业已经广泛采用,比如中国移动在2022年上半年发布了服务器补充采购的招标公告,本次补采鲲鹏服务器占比43.30%,海光服务器占比56.70%。X86架构和ARM架构对比,有以下不同之处:
从目前CPU的发展来看,无论是ARM还是X86,都在努力巩固自己的优势,同时积极吸取对方产品的特色,取长补短,期望有所突破。无论如何,未来的CPU肯定在朝着高性能、低功耗的方向发展。
国产CPU服务器主流产品包括海光和鲲鹏服务器,因此在信创服务器的性能对比过程中以海光处理器和鲲鹏处理器为主,并和Intel处理器进行对比。具体的测试服务器配置如下:
测试服务器都是采用虚拟化主机的形式,没有使用物理机,CPU和内存为16c32G。其中操作系统Intel使用Redhat 8.5、海光和鲲鹏使用的是信创Kylin V10版本;CPU型号海光是C86 7285、鲲鹏为Kunpeng-920、Intel是C5281R,CPU主频鲲鹏服务器稍高为2600。其它配置具体见表格。
使用sysbench压测工具测试服务器的CPU性能,命令如下:
#sysbench cpu –threads=`grep “processor” /proc/cpuinfo |wc -l ` --cpu-max-prime=200000 run
以上命令计算200000以内所有素数所需的时间,测试结果如下:
从CPU性能对比来看,Intel和海光的avg时间为鲲鹏ARM架构的3倍;95%占比Intel为鲲鹏的2.9倍、海光为鲲鹏的3.2倍。总体CPU性能上鲲鹏表现更优,和ARM架构的精简指令集RISC有关系。
使用sysbench压测工具测试服务器的内存性能,命令如下:
#sysbench memory --memory-block-size=8k --memory-total-size=8G run
以上命令测试内存中传输8G的数据量所需时间,测试结果如下:
从测试结果上看,三类服务器差别不大,鲲鹏表现更优。
使用fio命令测试服务器磁盘IO性能情况,命令如下:
#fio -direct=1 -iodepth=64 -rw=randrw -ioengine=libaio -bs=16k -size=10G -numjobs=8 -runtime=600 -group_reporting -filename=fiotest.txt -name=test
"-direct=1": "以直接I/O模式运行测试,绕过系统缓存。",
"-iodepth=64": "设置队列深度为64。",
"-rw=randrw": "随机读写模式。",
"-ioengine=libaio": "使用libaio作为I/O引擎。",
"-bs=16k": "设置块大小为16KB。",
"-size=10G": "设置测试文件大小为10GB。",
"-numjobs=8": "设置并发作业数为8。",
"-runtime=600": "设置测试运行时间为600秒。",
"-group_reporting": "汇总报告结果。",
"-filename=fiotest.txt": "设置测试文件名为fiotest.txt。",
"-name=test": "设置测试名称为test。"
以上命令读写10G文件测试磁盘的IO性能,测试结果如下:
从测试结果看,Intel服务器的磁盘IO性能最优、鲲鹏读写性能次之、海光表现相对差些,不排除虚拟机的影响。但整体上信创服务器的IO性能相较Intel_x86架构表现要差些。
混合业务压力测试使用sysbench脚本测试主键select、单insert和混合读写三种场景下在不同并发情况下的性能表现。
使用sysbench的oltp_read_only.lua进行主键查询性能测试,结果如下:
从TPS和时延指标来看,Intel服务器表现更优、海光次之、鲲鹏较差,但是海光和鲲鹏服务器在TPS表现上总体较Intel服务器还是有差距,性能上差40%。鲲鹏服务器的CPU表现更好,但是在高并发情况下CPU使用率上不去。
使用sysbench的oltp_insert.lua进行单insert性能测试,结果如下:
从TPS和时延指标来看,Intel服务器表现更优、海光次之、鲲鹏较差,在单insert插入场景下海光和鲲鹏服务器在TPS表现上总体较Intel服务器性能上差15%~25%。
使用sysbench的oltp_read_write.lua进行混合读写性能测试,结果如下:
从TPS和时延指标来看,Intel服务器表现更优、海光次之、鲲鹏较差,在混合读写压力场景下海光服务器在TPS表现上总体较Intel服务器性能上差40%、鲲鹏服务器较Intel服务器差50%。鲲鹏服务器在高并发情况下CPU使用率上不去,业务TPS也上不去。
通过对Intel_x86处理器、海光X86处理器以及鲲鹏ARM处理器三种服务器在主键select、单insert和混合读写测试场景下的性能对比,总体表现如下:
总结下来,国产服务器不论是海光X86还是鲲鹏ARM,和Intel处理器性能对比,存在明显的代差,国产信创之路道阻且长。以上数据受限于测试服务器和测试场景,仅供参考。
参考资料:
文章浏览阅读3.4k次,点赞8次,收藏42次。一、什么是内部类?or 内部类的概念内部类是定义在另一个类中的类;下面类TestB是类TestA的内部类。即内部类对象引用了实例化该内部对象的外围类对象。public class TestA{ class TestB {}}二、 为什么需要内部类?or 内部类有什么作用?1、 内部类方法可以访问该类定义所在的作用域中的数据,包括私有数据。2、内部类可以对同一个包中的其他类隐藏起来。3、 当想要定义一个回调函数且不想编写大量代码时,使用匿名内部类比较便捷。三、 内部类的分类成员内部_成员内部类和局部内部类的区别
文章浏览阅读118次。分布式系统要求拆分分布式思想的实质搭配要求分布式系统要求按照某些特定的规则将项目进行拆分。如果将一个项目的所有模板功能都写到一起,当某个模块出现问题时将直接导致整个服务器出现问题。拆分按照业务拆分为不同的服务器,有效的降低系统架构的耦合性在业务拆分的基础上可按照代码层级进行拆分(view、controller、service、pojo)分布式思想的实质分布式思想的实质是为了系统的..._分布式系统运维工具
文章浏览阅读174次。1.数据源准备2.数据处理step1:数据表处理应用函数:①VLOOKUP函数; ② CONCATENATE函数终表:step2:数据透视表统计分析(1) 透视表汇总不同渠道用户数, 金额(2)透视表汇总不同日期购买用户数,金额(3)透视表汇总不同用户购买订单数,金额step3:讲第二步结果可视化, 比如, 柱形图(1)不同渠道用户数, 金额(2)不同日期..._exce l趋势分析数据量
文章浏览阅读3.3k次。堡垒机可以为企业实现服务器、网络设备、数据库、安全设备等的集中管控和安全可靠运行,帮助IT运维人员提高工作效率。通俗来说,就是用来控制哪些人可以登录哪些资产(事先防范和事中控制),以及录像记录登录资产后做了什么事情(事后溯源)。由于堡垒机内部保存着企业所有的设备资产和权限关系,是企业内部信息安全的重要一环。但目前出现的以下问题产生了很大安全隐患:密码设置过于简单,容易被暴力破解;为方便记忆,设置统一的密码,一旦单点被破,极易引发全面危机。在单一的静态密码验证机制下,登录密码是堡垒机安全的唯一_horizon宁盾双因素配置
文章浏览阅读7.7k次,点赞4次,收藏16次。Chrome作为一款挺不错的浏览器,其有着诸多的优良特性,并且支持跨平台。其支持(Windows、Linux、Mac OS X、BSD、Android),在绝大多数情况下,其的安装都很简单,但有时会由于网络原因,无法安装,所以在这里总结下Chrome的安装。Windows下的安装:在线安装:离线安装:Linux下的安装:在线安装:离线安装:..._chrome linux debian离线安装依赖
文章浏览阅读153次。中国发达城市榜单每天都在刷新,但无非是北上广轮流坐庄。北京拥有最顶尖的文化资源,上海是“摩登”的国际化大都市,广州是活力四射的千年商都。GDP和发展潜力是衡量城市的数字指...
文章浏览阅读3.3k次。前言spark在java使用比较少,多是scala的用法,我这里介绍一下我在项目中使用的代码配置详细算法的使用请点击我主页列表查看版本jar版本说明spark3.0.1scala2.12这个版本注意和spark版本对应,只是为了引jar包springboot版本2.3.2.RELEASEmaven<!-- spark --> <dependency> <gro_使用java调用spark注册进去的程序
文章浏览阅读4.8k次。汽车零部件开发工具巨头V公司全套bootloader中UDS协议栈源代码,自己完成底层外设驱动开发后,集成即可使用,代码精简高效,大厂出品有量产保证。:139800617636213023darcy169_uds协议栈 源代码
文章浏览阅读4.6k次,点赞20次,收藏148次。AUTOSAR基础篇之OS(下)前言首先,请问大家几个小小的问题,你清楚:你知道多核OS在什么场景下使用吗?多核系统OS又是如何协同启动或者关闭的呢?AUTOSAR OS存在哪些功能安全等方面的要求呢?多核OS之间的启动关闭与单核相比又存在哪些异同呢?。。。。。。今天,我们来一起探索并回答这些问题。为了便于大家理解,以下是本文的主题大纲:[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-JCXrdI0k-1636287756923)(https://gite_autosar 定义了 5 种多核支持类型
文章浏览阅读2.2k次,点赞6次,收藏14次。原因:自己写的头文件没有被加入到方案的包含目录中去,无法被检索到,也就无法打开。将自己写的头文件都放入header files。然后在VS界面上,右键方案名,点击属性。将自己头文件夹的目录添加进去。_vs2013打不开自己定义的头文件
文章浏览阅读3.3w次,点赞80次,收藏342次。此时,可以将系统中所有用户的 Session 数据全部保存到 Redis 中,用户在提交新的请求后,系统先从Redis 中查找相应的Session 数据,如果存在,则再进行相关操作,否则跳转到登录页面。此时,可以将系统中所有用户的 Session 数据全部保存到 Redis 中,用户在提交新的请求后,系统先从Redis 中查找相应的Session 数据,如果存在,则再进行相关操作,否则跳转到登录页面。当数据量很大时,count 的数量的指定可能会不起作用,Redis 会自动调整每次的遍历数目。_redis命令
文章浏览阅读449次,点赞3次,收藏3次。URP的设计目标是在保持高性能的同时,提供更多的渲染功能和自定义选项。与普通项目相比,会多出Presets文件夹,里面包含着一些设置,包括本色,声音,法线,贴图等设置。全局只有主光源和附加光源,主光源只支持平行光,附加光源数量有限制,主光源和附加光源在一次Pass中可以一起着色。URP:全局只有主光源和附加光源,主光源只支持平行光,附加光源数量有限制,一次Pass可以计算多个光源。可编程渲染管线:渲染策略是可以供程序员定制的,可以定制的有:光照计算和光源,深度测试,摄像机光照烘焙,后期处理策略等等。_urp渲染管线