关于异数OS服务器CPU效能分析工具
该工具发布背景
近年来,国产服务器CPU产业的逐渐发展,但由于专业性较差,与国外存在40年以上技术差距,一些服务器CPU厂商利用信息差来制造一些非专业的数据夸大并虚假宣传混淆视听,成功达到劣币驱良币的目标,本着正本清源驱除劣币以正视听让国产服务器CPU产业达到良性竞争的目标,四川墨道科技放出部分专业的异数OS服务器CPU效能分析工具,让更多业内人士能够更加准确的认识分辨国产服务器CPU性能,以此帮助落后40年的国产服务器CPU开发商能够找到自身产品缺陷不足来提高优化产品。
差距40年的依据是什么?
甲骨文公司成立于1977年,其产品Oracle垄断全球高端市场40年,阿里自2012年开始去IOE战略,截至2023年,其核心产品OceanBase在当今最强大的服务器CPU加持下,其TPS性能仅相当于2010年Oracle RAC(甲骨文自研的CPU)性能的三分之一,因此有理由相信在服务器领域,中美差距至少在40年。
这个工具测的什么?
服务器CPU和桌面CPU实际上有非常大的不同,桌面CPU通常注重IPC和频率,但服务器CPU则受到存储墙约束而更看重多核numa互联访存效率,为何会这样?因为CPU的IPC性能差距通常不会高于1个数量级,但是numa互联访存效率则会导致CPU的IPC利用效率下降2到3个数量级,因此专业的服务器开发商通常都不关心CPU的IPC和频率,而更关心numa互联效率及其优化方案,因此异数OS的这个服务器CPU分析工具并不测试CPU的IPC,而主要测试项目是CPU Diff,当然这个CPU Diff和其他测试工具有不同点,他的主要目标是更加深入的揭露一些CPU厂的作弊行为,CPU厂一般处于自身利益考虑,只放出最小延迟的CPU Diff,这个Diff是不负责任并有害的,因为最小延迟测试同一时间只启动两个CPU核做延迟测试,其他核都是空载空闲的,这与实际云环境不同,云环境一般多核访存负载都很高,并且无法做针对性的numa优化,这时测到的CPU延迟会成十倍甚至百倍的增加,从而使IPC下降到甚至不足百分之一,因此CPU厂通常为了掩盖问题真像而只提供最小互联延迟,并让这个成绩好看,这种行为甚至能忽悠到很多专业的服务器开发商,但这个成绩在更多时候可能要反着理解才有意义,因为一些做了numa分布式内存解决方案的cpu,最小延迟表现可能是很差的,但拥塞延迟效率却会提高,反而是一些没有做numa分布式内存的cpu,最小延迟数据很好看,但拥塞延迟完全不能入眼。
因此异数OS的 CPU Diff工具提供了拥塞延迟测试数据,拥塞延迟是所有CPU核同时启动延迟测试得到的CPU延迟数据,之后通过拥塞延迟与最小延迟的比值来得到拥塞延迟效率,单位为千分之一,该值体现服务器CPU全核负载下的真正效率,这个效率可用于分析云上实际部署后的性能,比如拥塞效率是千分之十,则说明一个100核的服务器CPU在访存满载时性能不如一个单核CPU。
12700H win平台例子
打开工具选择第10项,CPU Diff,测得12700H测得的延迟表现,以此举例说明,Core-MinLatencyTest是最小延迟测试,单位是ns他的成绩几乎和CPU厂发布的最小延迟数据一致,Core-ThrongLatencyTest是拥塞延迟测试,数值超过999ns时显示溢出,Throng efficiency是拥塞访存效率,他是Core-ThrongLatencyTest成绩和Core-MinLatencyTest成绩的比值,单位是千分之一,如果Core-ThrongLatencyTest数值显示溢出,可用Throng efficiency反推拥塞延迟,可以看出12700H的最小延迟测试成绩很优秀,无论大核小核都只有40ns到50ns延迟,但在拥塞延迟测试中,大核延迟则增加了10倍,小核延迟增加了20倍,这说明你的游戏客户端或者服务器在做粒子物理仿真时开更多的核是无意义的,开2到4个CPU核甚至只开1个核反而更优,小核12访问小核19最小延迟45ns,但拥塞延迟已超过999溢出,拥塞延迟效率千分之39,因此反推出拥塞延迟为1153ns,通过对比最小延迟分布和拥塞延迟分布可以发现最小延迟分布仅有1个梯度,而拥塞延迟分布有3个梯度,拥塞延迟梯度分布更加符合numa互联瓶颈的分布梯度,因此更加符合云服务器实际有负载时的场景情况。
平台支持
该测试工具目前支持x64 arm64 sw64三种指令集,采用静态链接编译,不开放源代码,因此不存在编译优化,操作系统优化,libc优化作弊等问题,另外在linux上需要开启numa巨页支持,一些国产服务器CPU可能由于不专业所以没有做好numa巨页支持,这需要服务器CPU厂自己解决。numa巨页支持属于服务器必不可少的选项,在很多基础软件中都有大量使用,比如大多数的数据库软件,numa 巨页的开启方法见后面两张图,分别是申威sw1621,阿里云安培32核arm的,其他平台可以照抄或自行研究。
下载链接
Github下载地址
相关文章:

关于异数OS服务器CPU效能分析工具
该工具发布背景 近年来,国产服务器CPU产业的逐渐发展,但由于专业性较差,与国外存在40年以上技术差距,一些服务器CPU厂商利用信息差来制造一些非专业的数据夸大并虚假宣传混淆视听,成功达到劣币驱良币的目标࿰…...

十四、pikachu之XSS
文章目录 1、XSS概述2、实战2.1 反射型XSS(get)2.2 反射型XSS(POST型)2.3 存储型XSS2.4 DOM型XSS2.5 DOM型XSS-X2.6 XSS之盲打2.7 XSS之过滤2.8 XSS之htmlspecialchars2.9 XSS之href输出2.10 XSS之JS输出 1、XSS概述 Cross-Site S…...
五分钟了解最短路径寻路算法:Dijkstra 迪杰斯特拉
最短路径查找算法 寻路算法在生活中应用十分常见。本文实现的是关于图的最短路径查找算法。 该算法比较常见于游戏和室内地图导航。 实现 例子:几个节点之间,相连接的线段有固定长度,该长度决就是通过代价。查找到花费最少的路径。该图结构…...

【ARM】Day8 中断
1. 思维导图 2. 实验要求: 实现KEY1/LEY2/KE3三个按键,中断触发打印一句话,并且灯的状态取反 key1 ----> LED3灯状态取反 key2 ----> LED2灯状态取反 key3 ----> LED1灯状态取反 key3.h #ifndef __KEY3_H__ #define __KEY3_H__#in…...

大数据Flink(六十八):SQL Table 的基本概念及常用 API
文章目录 SQL & Table 的基本概念及常用 API 一、一个 Table API\SQL任务的代码结构...
算法练习- 其他算法练习6
文章目录 数字序列比大小最佳植树距离文艺汇演计算误码率二维伞的雨滴效应阿里巴巴找黄金宝箱4 数字序列比大小 A、B两人一人一个整数数组,长度相等,元素随即;两人随便拿出一个元素(弹出),比较大小&#x…...

ModaHub魔搭社区:WinPlan经营大脑管理中心
角色权限 展示设置的角色,及对应的成员及权限点。角色、成员、权限点可自由配置;管理员的角色不可删除、权限点默认全部不可更改。 WinPlan决策系统 算力 阿里云 腾讯云 AWS亚马逊 框架 业务数据基座 WinPlan垂直大模型 模型 分...

滑动窗口系列4-Leetcode322题零钱兑换-限制张数-暴力递归到动态规划再到滑动窗口
这个题目是Leecode322的变种,322原题如下: 我们这里的变化是把硬币变成可以重复的,并且只有coins数组中给出的这么多的金币,也就是说有数量限制: package dataStructure.leecode.practice;import java.util.Arrays; i…...

Nginx全局配置
一、修改启动进程数 worker_processes 1; #允许的启动工作进程数数量,和你真实的cpu数量有关 1 worker_processes auto; #如果设置为auto 就是你真实的cpu数量 ps axo pid,cmd,psr,ni|grep nginx #可以看到 nginx的 worker数量 二、日制分割 [rootyuji ~]#…...

VUE笔记(四)vue的组件
一、组件的介绍 1、组件的作用 整个项目都是由组件组成 可以让代码复用:相似结构代码可以做成一个组件,直接进行调用就可以使用,提高代码复用性 可以让代码具有可维护性(只要改一处,整个引用的部分全部都变…...
菜鸟教程《Python 3 教程》笔记
菜鸟教程《Python 3 教程》笔记 0 写在前面1 基本数据类型1.1 Number(数字)1.2 String(字符串)1.3 bool(布尔类型)1.4 List(列表)1.5 Tuple(元组)1.6 Set&…...

JAVA学习-愚见
JAVA学习-愚见 分享一下Java的学习路线,仅供参考【本人亲测,真实有效】 1、尽可能推荐较新的课程 2、大部分视频在B站上直接搜关键词就行【自学,B大的学生】 文章目录 JAVA学习-愚见前期准备Java基础课程练手项目 数据库JavaWeb前端基础 Vue…...
Watch数据监听详解
一、Vue2写法 1、watch使用的几种方法 1、通过 watch 监听 data 数据的变化,数据发生变化时,就会打印当前的值 watch: {data(val, value) {console.log(val)console.log(value)}} 2、通过 watch 监听 list 数据的变化,数据发生变化时&…...

UML建模以及几种类图的理解
文章目录 前言1.用例与用例图1.1 参与者1.2 用例之间的关系1.3 用例图1.4 用例的描述 2.交互图2.1 顺序图2.2 协作图 3.类图和对象图3.1 关联关系3.2 聚合和组合3.3 泛化关系3.4 依赖关系 4.状态图与活动图4.1 状态图4.2 活动图 5.构件图 前言 UML通过图形化的表示机制从多个侧…...

opencv进阶18-基于opencv 决策树导论
1. 什么是决策树? 决策树是最早的机器学习算法之一,起源于对人类某些决策过程 的模仿,属于监督学习算法。 决策树的优点是易于理解,有些决策树既可以做分类,也可以做回归。在排名前十的数据挖掘算法中有两种是决策树[1…...

13.4 目标检测锚框标注 非极大值抑制
锚框的形状计算公式 假设原图的高为H,宽为W 锚框形状详细公式推导 以每个像素为中心生成不同形状的锚框 # s是缩放比,ratio是宽高比 def multibox_prior(data, sizes, ratios):"""生成以每个像素为中心具有不同形状的锚框"""in_he…...

【论文笔记】最近看的时空数据挖掘综述整理8.27
Deep Learning for Spatio-Temporal Data Mining: A Survey 被引用次数:392 [Submitted on 11 Jun 2019 (v1), last revised 24 Jun 2019 (this version, v2)] 主要内容: 该论文是一篇关于深度学习在时空数据挖掘中的应用的综述。论文首先介绍了时空数…...

【大模型】基于 LlaMA2 的高 star 的 GitHub 开源项目汇总
【大模型】基于 LlaMA2 的高 star 的 GitHub 开源项目汇总 Llama2 简介开源项目汇总NO1. FlagAlpha/Llama2-ChineseNO2. hiyouga/LLaMA-Efficient-TuningNO3. yangjianxin1/FireflyNO4. LinkSoul-AI/Chinese-Llama-2-7bNO5. wenge-research/YaYiNO6. michael-wzhu/Chinese-LlaM…...

解决elementUI打包上线后icon图标偶尔乱码的问题
解决vue-elementUI打包后icon图标偶尔乱码的问题 一、背景二、现象三、原因四、处理方法方式1:使用css-unicode-loader方式2:升高 sass版本到1.39.0方式3:替换element-ui的样式文件方式4:更换打包压缩方式知识扩展:方式…...

yolov3加上迁移学习和适度的数据增强形成的网络应用在输电线异物检测
Neural Detection of Foreign Objects for Transmission Lines in Power Systems Abstract. 输电线路为电能从一个地方输送到另一个地方提供了一条路径,确保输电线路的正常运行是向城市和企业供电的先决条件。主要威胁来自外来物,可能导致电力传输中断。…...

利用最小二乘法找圆心和半径
#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …...

龙虎榜——20250610
上证指数放量收阴线,个股多数下跌,盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型,指数短线有调整的需求,大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的:御银股份、雄帝科技 驱动…...
ES6从入门到精通:前言
ES6简介 ES6(ECMAScript 2015)是JavaScript语言的重大更新,引入了许多新特性,包括语法糖、新数据类型、模块化支持等,显著提升了开发效率和代码可维护性。 核心知识点概览 变量声明 let 和 const 取代 var…...
C++:std::is_convertible
C++标志库中提供is_convertible,可以测试一种类型是否可以转换为另一只类型: template <class From, class To> struct is_convertible; 使用举例: #include <iostream> #include <string>using namespace std;struct A { }; struct B : A { };int main…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...

微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...

2025盘古石杯决赛【手机取证】
前言 第三届盘古石杯国际电子数据取证大赛决赛 最后一题没有解出来,实在找不到,希望有大佬教一下我。 还有就会议时间,我感觉不是图片时间,因为在电脑看到是其他时间用老会议系统开的会。 手机取证 1、分析鸿蒙手机检材&#x…...

自然语言处理——Transformer
自然语言处理——Transformer 自注意力机制多头注意力机制Transformer 虽然循环神经网络可以对具有序列特性的数据非常有效,它能挖掘数据中的时序信息以及语义信息,但是它有一个很大的缺陷——很难并行化。 我们可以考虑用CNN来替代RNN,但是…...
鸿蒙DevEco Studio HarmonyOS 5跑酷小游戏实现指南
1. 项目概述 本跑酷小游戏基于鸿蒙HarmonyOS 5开发,使用DevEco Studio作为开发工具,采用Java语言实现,包含角色控制、障碍物生成和分数计算系统。 2. 项目结构 /src/main/java/com/example/runner/├── MainAbilitySlice.java // 主界…...

sipsak:SIP瑞士军刀!全参数详细教程!Kali Linux教程!
简介 sipsak 是一个面向会话初始协议 (SIP) 应用程序开发人员和管理员的小型命令行工具。它可以用于对 SIP 应用程序和设备进行一些简单的测试。 sipsak 是一款 SIP 压力和诊断实用程序。它通过 sip-uri 向服务器发送 SIP 请求,并检查收到的响应。它以以下模式之一…...