国产CPU 申威1621 异数OS基础组件理论性能测试报告

前言

一直以来,异数OS都希望能够支援国产CPU生态的建设,这次机缘来到来到成都申威,看到了传说中的申威CPU,并做了异数OS基础组件的理论测试,在此感谢成都申威提供的SW 1621测试环境,期望国产CPU能走上市场化发展的正轨,进入民用领域,从此摆脱舆论束缚,让市场锤炼出民族的英雄与战士。

测试平台

CPU SW1621 4 node 每node 4cpu,主频1.6GHz,8通道64G DDR3。

测试项目

  1. SW1621 异数OS 容器虚拟交换机模拟性能测试
  2. 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基础组件理论性能测试报告的更多相关文章

  1. 异数OS-织梦师-异数OS虚拟容器交换机(七) 走进4Tbps网络应用时代,加速5G应用真正落地

    . 异数OS-织梦师-异数OS虚拟容器交换机(七) 走进4Tbps网络应用时代,加速5G应用真正落地 本文来自异数OS社区 github: https://github.com/yds086/Here ...

  2. 异数OS国产CPU平台移植项目需求分析

    异数OS国产CPU平台移植项目需求分析 目录 异数OS国产CPU平台移植项目需求分析 项目立项背景 项目需求分析 异数OS性能指标简介 1.TCP协议栈性能测试 2.异数OS-织梦师-水母 消息队列性 ...

  3. 异数OS谈发展国产操作系统的问题

    异数OS谈发展国产操作系统的问题 为什么写本文 最近中兴被美制裁的问题以及红芯使用开源技术宣称国产自主技术引发了舆论不少对国产CPU以及国产操作系统自主技术的讨论,为什么我们国家有BAT,有原子弹,能 ...

  4. 异数OS TCP协议栈测试(五)--关于QOS与延迟

    . 异数OS TCP协议栈测试(五)–关于QOS与延迟 ##本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 6524 ...

  5. 异数OS 织梦师-云(五)-- 容器服务化,绿色拯救未来。

    . 异数OS 织梦师-云(五)– 容器服务化,绿色拯救未来. 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652 ...

  6. 异数OS 织梦师-Xnign(四)-- 挑战100倍速Nginx,脚踩F5硬件负载均衡

    . 异数OS 织梦师-Xnign(四)– 挑战100倍速Nginx,脚踩F5硬件负载均衡 本文来自异数OS社区 github: https://github.com/yds086/HereticOS ...

  7. 异数OS 织梦师-纤手(二)-- LPC RPC篇

    异数OS 织梦师-纤手(二)– LPC RPC篇 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455784 ...

  8. 异数OS 织梦师-水母(一)--消息队列篇

    异数OS 织梦师-水母(一)–消息队列篇 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455784 异数O ...

  9. 异数OS TCP协议栈测试(四)--网卡适配篇

    异数OS TCP协议栈测试(四)–网卡适配篇 本文来自异数OS社区 github: https://github.com/yds086/HereticOS 异数OS社区QQ群: 652455784 异 ...

随机推荐

  1. CCPC2018 桂林 D "Bits Reverse"

    传送门 题目描述 Now given two integers x and y, you can reverse every consecutive three bits ,,) means chan ...

  2. Spring AOP 源码分析

    一.准备工作 在这里我先简单记录下如何实现一个aop:   AOP:[动态代理] 指在程序运行期间动态的将某段代码切入到指定方法指定位置进行运行的编程方式: 1.导入aop模块:Spring AOP: ...

  3. 解决应用服务器变为集群后的Session问题

    2.2.4.2 解决应用服务器变为集群后的Session问题 先来看一下什么是Session. 用户使用网站的服务,基本上需要浏览器与Web 服务器的多次交互.HTTP 协议本身是无状态的,需要基于H ...

  4. UVA - 11475 Extend to Palindrome (后缀数组)

    Your task is, given an integer N, to make a palidrome (word that reads the same when you reverse it) ...

  5. POJ 3111 K Best 最大化平均值 [二分]

    1.题意:给一共N个物品,每个物品有重量W,价值V,要你选出K个出来,使得他们的平均单位重量的价值最高 2.分析:题意为最大化平均值问题,由于每个物品的重量不同所以无法直接按单位价值贪心,但是目标值有 ...

  6. Kafka2.4发布——新特性介绍(附Java Api Demo代码)

    新功能 允许消费者从最近的副本进行获取 为 Consumer Rebalance Protocol 增加对增量协同重新均衡(incremental cooperative rebalancing)的支 ...

  7. 力扣142——环形链表 II

    原题 给定一个链表,返回链表开始入环的第一个节点. 如果链表无环,则返回 null. 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始). 如果 pos ...

  8. selenium模块的基本使用

    一.selenium库与requests库的区别 - selenium请求库: - 本质上是一个自动化测试模块; ---> 主要用于测试 UI界面 - selenium除了可以做自动化测试,还可 ...

  9. mumu模拟器手Q自动化配置

    { "platformName": "Android", "platformVersion": "6.0.1", &qu ...

  10. vue 源码 学习days8-比较两个对象的方法

    // 在面试中可能会遇到, 思想重要 // 比较两个对象是否是相等的 两个对象 // 1. js 中对象是无法使用 == 来比较的, 比是地址 // 2. 我们一般会定义如果对象的各个属性值都相等 那 ...