国产CPU 申威1621 异数OS基础组件理论性能测试报告
国产CPU 申威1621 异数OS基础组件理论性能测试报告
文章目录
前言
一直以来,异数OS都希望能够支援国产CPU生态的建设,这次机缘来到来到成都申威,看到了传说中的申威CPU,并做了异数OS基础组件的理论测试,在此感谢成都申威提供的SW 1621测试环境,期望国产CPU能走上市场化发展的正轨,进入民用领域,从此摆脱舆论束缚,让市场锤炼出民族的英雄与战士。
测试平台
CPU SW1621 4 node 每node 4cpu,主频1.6GHz,8通道64G DDR3。
测试项目
- SW1621 异数OS 容器虚拟交换机模拟性能测试
- SW1621 异数OS TCP协议栈理论性能模拟测试
SW1621 异数OS 容器虚拟交换机模拟性能测试
A->B->C->A 三节点回环转发
异数OS虚拟交换机模块 三核 跨核以及本地模式
本地模式中ABC三个节点都在本地CPU核完成回环三个操作由本地核完成。
跨核模式中ABC三个节点分别分配到3个不同cpu核完成。
本地转发性能主要影响异数OS集群本地系统内容器间网络交换性能。
跨核模式主要影响异数OS集群本地系统之间容器间网络交换性能。
分数与意义说明
SW1621本地转发 1400字节转发的分数是600kpps*15*3 600kpps是指单位时间内完成一次A->B->C->A回环操作的次数,*15是指15CPU核实例,*3指一次回环转发操作的数量(A->B->C->A 一次回环3次转发)。
跨核由于ABC都需要占用一个CPU节点因此只有5个实例,分数是*5
SW1621 异数OS TCP协议栈理论性能模拟测试
单核环境
创建1000W TCP session.
新建性能 2.9M(I7 2680QM 2.6G 5.2M)
随机查询性能 3.1M(I7 2680QM 2.6G 15M)
测试总结
申威CPU跨核带宽最大7.5GB/s(3*5核),本地模式36GB/s (3*15核) 大于128字节时IO性能下降明显。
申威给的STREAM测试成绩使用MP技术,STREAM的任务是无交叉关联的,任务可多核无关并发分配,因此MP可编译期任务划分到本地线程,运行时内存拷贝使用本地CPU内存拷贝模式,因此不具有跨核内存拷贝参考意义。
如果需要测试多核交叉互联拷贝性能,测需要改变STREAM代码,如下
//原来的代码
void tuned_STREAM_Copy()
{
ssize_t j;
#pragma omp parallel for
for (j=0; j<STREAM_ARRAY_SIZE; j++)
c[j] = a[j];
}
//改造为跨核访问的代码
void tuned_STREAM_Copy()
{
ssize_t j;
#pragma omp parallel for
for (j=0; j<STREAM_ARRAY_SIZE; j++)
c[j] = a[rand(j)];
}
推测跨核模式由于CPU内联交换总线延迟较大,吞吐下降,未来实用环境中使用异数OS多隧道交换技术吞吐可能会有改善(测试程序只有1并发隧道)
初步数据分析,申威1621可以满足Xnign-X1的性能需求,异数OS TCP协议栈7层IO密集型应用性能预计15核可达到1400字节200W IOPS(20Gbps带宽) 或者64字节15M IOPS(10Gbps带宽),未来numa内存调校优化后,预计可以满足Xnign-X2的硬件需求,配合异数OS在5G领域开发定制产品应该会有不错的竞争力,实现直线超车。
(Xnign-X1的http性能相当于intel全家cpu+linux+nginx性能的20倍)。
下面是Xnign产品性能参数介绍
https://blog.csdn.net/AthlonxpX86/article/details/85279871
测试程序运行结果图
1.15核512字节本地交换
2.TCP Session模拟测试
国产CPU 申威1621 异数OS基础组件理论性能测试报告的更多相关文章
- 异数OS-织梦师-异数OS虚拟容器交换机(七) 走进4Tbps网络应用时代,加速5G应用真正落地
. 异数OS-织梦师-异数OS虚拟容器交换机(七) 走进4Tbps网络应用时代,加速5G应用真正落地 本文来自异数OS社区 github: https://github.com/yds086/Here ...
- 异数OS国产CPU平台移植项目需求分析
异数OS国产CPU平台移植项目需求分析 目录 异数OS国产CPU平台移植项目需求分析 项目立项背景 项目需求分析 异数OS性能指标简介 1.TCP协议栈性能测试 2.异数OS-织梦师-水母 消息队列性 ...
- 异数OS谈发展国产操作系统的问题
异数OS谈发展国产操作系统的问题 为什么写本文 最近中兴被美制裁的问题以及红芯使用开源技术宣称国产自主技术引发了舆论不少对国产CPU以及国产操作系统自主技术的讨论,为什么我们国家有BAT,有原子弹,能 ...
- 异数OS TCP协议栈测试(五)--关于QOS与延迟
. 异数OS TCP协议栈测试(五)–关于QOS与延迟 ##本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 6524 ...
- 异数OS 织梦师-云(五)-- 容器服务化,绿色拯救未来。
. 异数OS 织梦师-云(五)– 容器服务化,绿色拯救未来. 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652 ...
- 异数OS 织梦师-Xnign(四)-- 挑战100倍速Nginx,脚踩F5硬件负载均衡
. 异数OS 织梦师-Xnign(四)– 挑战100倍速Nginx,脚踩F5硬件负载均衡 本文来自异数OS社区 github: https://github.com/yds086/HereticOS ...
- 异数OS 织梦师-纤手(二)-- LPC RPC篇
异数OS 织梦师-纤手(二)– LPC RPC篇 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455784 ...
- 异数OS 织梦师-水母(一)--消息队列篇
异数OS 织梦师-水母(一)–消息队列篇 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455784 异数O ...
- 异数OS TCP协议栈测试(四)--网卡适配篇
异数OS TCP协议栈测试(四)–网卡适配篇 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455784 异 ...
随机推荐
- H3C查看保存的配置文件
- Common Logging包装设计
类设计 LogFactory根据当前环境加载具体的Log实现: 1.从缓存中加载LogFactory 2.从系统属性org.apache.commons.logging.LogFactory 中加载L ...
- Javascript中那些你不知道的事之-- false、0、null、undefined和空字符串
话不多说直接进入主题:(如果有写的不对的地方欢迎指正) 我们先来看看他们的类型分别是什么: typeof类型检测结果 结论:false是布尔类型对象,0是数字类型对象,null是object对象,un ...
- linux之旅首页
为什么有此系列文章 目录 为什么有此系列文章 一直使用windows,决定使用linux作为操作系统. 使用此系列文章来记录我使用linux过程中遇到的问题,和应对方式 目录 安装linux
- python数据分析经常使用的库
这个列表包含数据分析经常使用的Python库,供大家使用.1. 网络通用urllib -网络库(stdlib).requests -网络库.grab – 网络库(基于pycurl).pycurl – ...
- Android4_学会使用Log打印
一.Log介绍: Android中的日志工具类是Log(android.util.Log),这个类中提供了如下5个方法来供我们打印日志. Log.v() .用于打印那些最为琐碎的.意义最小的日志信息. ...
- Python_全局变量的定义
1.在my套件下新建一个关键字systemkey并进行脚本的编写:创建一个${var1}变量,并赋值为aaaaaaaaaa Set Global Variable ${var1} ...
- 字符串format格式方式
1.format后面都是个元组类型!!! 不一一对应则报错,比如少了一个替换的元素,format可以少但是不能多,一多就会报错 括号里可以加索引,看例2 可以用索引只取一个值,比如括号里都是{1} r ...
- 什么?我往Redis写的数据怎么没了?
大概是因为int没有因为change方法而改变原值,所以就说它传过去的是自身的值,因而叫值传递:User对象经过change方法后,对象的数据变了,就认为是因为实参和形参指向的是同一片内存空间,内存空 ...
- SQL Server 中数据查询注意事项
1.查询语句不用区分大小写,而且即使每张表的表名或者列名出现大写字母,在写查询语句的时候也不用区分大小写,查询结果保持一致,所以查询语句小写即可. 2.在写查询语句的时候列名不需要带单引号,数值型的字 ...