鲲鹏devkit性能分析工具介绍(一)

news2025/1/21 4:13:27

鲲鹏devkit性能分析工具介绍(一)

鲲鹏性能分析工具由四个子工具组成,分别为:系统性能分析、Java性能分析、系统诊断和调优助手。

系统性能分析是针对基于鲲鹏的服务器的性能分析工具,能收集服务器的处理器硬件、操作系统、进程/线程、函数等各层次的性能数据,分析系统性能指标,定位到系统瓶颈点及热点函数,并给出优化建议。该工具可以辅助用户快速定位和处理软件性能问题。

Java性能分析是针对基于鲲鹏的服务器上运行的Java程序的性能分析和优化工具,能图形化显示Java程序的堆、线程、锁、垃圾回收等信息,收集热点函数、定位程序瓶颈点,帮助用户采取针对性优化。

系统诊断是针对基于鲲鹏的服务器的性能分析工具,提供内存泄漏诊断(包括内存未释放和异常释放)、内存越界诊断、内存消耗信息分析展示、OOM诊断能力、网络丢包等,帮助用户识别出源代码中内存使用的问题点,提升程序的可靠性,工具还支持压测系统,如:网络IO诊断,评估系统最大性能。

调优助手是针对基于鲲鹏的服务器的调优工具,能系统化组织性能指标,引导用户分析性能瓶颈,实现快速调优。
在这里插入图片描述

工具的目标用户

作为一款性能分析工具,它具有这广泛的使用场景,同时也适合如下的目标用户
软件运行分析适合软件开发人员(以软件的运行情况为分析的起点)
主要分析的是:热点函数并发控制锁与等待
系统资源分析适合系统资源管理/poc人员(以系统资源分析为起点)
主要分析的是:系统配置系统资源使用资源调度NUMA访问
在这里插入图片描述

软件架构

工具从软件逻辑上分成Analysis Server 和Agent两大部分:

Analysis Server:主要作用是实现性能数据分析及分析结果呈现
Agent:主要作用是实现性能数据采集

下面是鲲鹏性能分析工具的软件架构图
在这里插入图片描述

全景分析

通过采集系统软硬件配置信息,以及系统CPU、内存、存储IO、网络IO资源的运行情况,获得对应的使用率、饱和度、错误次数等指标,以此识别系统性能瓶颈。针对部分系统指标项,根据当前已有的基准值和优化经验提供优化建议。

针对大数据场景、数据库场景和分布式存储场景的硬件配置、系统配置和组件配置进行检查并显示不是最优的配置项,同时分析给出典型硬件配置及软件版本信息。

  • 以全景图的方式展示服务器及其子系统的TOPO结构及其配置。方便用户快速了解系统配置,及是否存在配置不合理的点,例如内存条配置位置
  • 基于use性能分析方法,针对系统cpu、内存、磁盘IO、网络IO资源的运行情况,获得他们的使用率、饱和度、错误等指标,一次识别系统瓶颈
  • 针对大数据、数据库、分布式存储场景的硬件配置、系统配置和组件配置进行检查并显示不上最优的配置项,同时分析出典型硬件配置及软件版本信息
  • 综合分析性能和系统配置情况,给出检测到的系统性能瓶颈,并给出优化建议和修改方案
    在这里插入图片描述

全景分析原理

基于USE性能分析方法,获得系统资源的使用率、饱和度、错误等指标,依次识别系统瓶颈

  • 使用率:在规定的时间间隔内,资源用于服务工作的时间百分比。虽然资源繁忙,但是资源还有能力接受更多工作的程度被视为饱和度
  • 饱和度:资源不能在服务更多额外工作的程度,通常有等待队列
  • 错误:错误事件的个数
    在这里插入图片描述

CPU重点指标解读

%sys:该指标表示cPu花了多少比例的时间在内核空间运行,分配内存、I0操作、创建子进程等都是内核操作,所以当该指标较高时,建议:
1、检查系统上是否存在大量lo操作。如果存在建议更换高性能lo设备,或减少o操作
2、2.如果lo操作不多,建议检查内核、驱动是否有问题。
在这里插入图片描述
%iowait:当该指标占用率过高的时候,通常意味着某些程序的Io操作效率很低。或者O对应设备的性能很低以至于读写操作需要很长的时间来完成,所以当该指标较高时,建议议更换高性能O设备或减少IO操作。

内存重点指标解读

pgpgin/s

每秒从磁盘或SWAP置换到内存的字节数(KB)。

pgpgout/s

每秒从内存置换到磁盘或SWAP的字节数(KB)。
pgscank/s

每秒被kswapd守护进程扫描的分页数量。

pgscand/s

每秒直接被扫描的分页数量。
pswpin/s

系统每秒换入的交换分区页面总数。

pswpout/s

系统每秒换出的交换分区页面总数。
memused (KB)

已使用的内存大小,以KB为单位。包括缓冲区和缓存的空间。

%memused

已使用内存的百分比,即memused(KB)/(memused(KB)+memfree(KB))。
在这里插入图片描述

存储IO重点指标解读

avgrq-sz

平均每次存储I/O操作的数据大小(以扇区为单位)。

avgqu-sz

磁盘请求队列的平均长度。
%util

在I/O请求发送到设备期间所消耗的CPU时间百分比(设备的带宽使用率)。当该值接近100%时说明磁盘读写将近饱和。
svctm

系统处理每次请求的平均时间(以毫秒为单位),不包括在请求队列中消耗的时间。
在这里插入图片描述

网络IO重点指标解读

rxdrop/s

当Linux缓冲区满的时候,网卡设备接收端每秒钟丢弃的数据包的数量。

txdrop/s

当Linux缓冲区满的时候,网络设备发送端每秒钟丢弃的网络包的数量。
rxfifo/s

在接收数据包时,每秒发生FIFO溢出错误的次数。

txfifo/s

当发送数据包时,每秒发生FIFO溢出错误的次数。
在这里插入图片描述

重点系统配置解读

由于TLB映射记录数量有限。使用更大的页面可以增加从缓存转换的内存范国,从而减少TLB未命中而提高性能
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/43782.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

从2022安洵杯[babyPHP]看Soap+CLRF造成SSRF漏洞

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一、PHP SOAP 二、漏洞成因 三、 题目知识准备 1、PHP Session反序列化 2、题目相关函数 四、[LCTF 2018]bestphps revenge 五、2022安洵杯 BabyPHP 前言 …

基于ASP.net的服装商城设计

目录 海秀衣城系统 2 1.概 述 2 1.1 网上购物的发展 2 1.2 三层架构技术简介 2 2. 系统总体设计 4 2.1 开发以及运行环境 4 2.2项目结构分析 4 2.3系统功能总体结构图 5 2.4系统功能结构分解图 5 3. 数据库设计 6 3.1 数据库设计 6 3.2 数据表 7 4. 模块设计 10 4.1 前端功能模…

SpringCloud微服务实践之七 网关(Gateway)

一、网关基本概念 (一)网关功能 身份认证和权限校验服务路由、负载均衡请求限流 (二)网关技术选型 SpringCloud提供了两个组件都可以实现网关功能: gatewayzuul 其中,Zuul是基于Servlet的实现&#xff…

SQL注入漏洞 | 数字型

文章目录前言MySQL 数字型前言 SQL注入漏洞 | iwebsec MySQL 数字型 页面观察:测试看回显 注入点判断:发现有sql注入漏洞 AND 可在 where 子语句中把两个或多个条件结合起来。如果第一个条件和第二个条件都成立,则 AND 运算符显示一条记录…

HBuilder X实现tabBar底部导航记录

首先,打开uniapp官网,找到tarbar官方文档,仔细阅读,具体位置如下,全局配置下面的pages.json页面路由里面找到tabBar,点击查看: 重点注意这两句话: 找到文档我们就可以按照上面的提示…

迭代器模式(Iterator)

参考: 迭代器设计模式 (refactoringguru.cn) [design-patterns-cpp/Iterator.cpp at master JakubVojvoda/design-patterns-cpp GitHub 文章目录一、什么是迭代器模式?二、实现三、优缺点优点缺点一、什么是迭代器模式? 提供一种方法&…

QFont-使用外部字体文件的问题

我们程序里面定义了某个结构体(这里简单描述为AStruct),AStruct包含了一个QFont 类型的成员变量: struct AStruct {QFont ft; }; 在具体业务上,AStruct中的QFont会被传递给QPainter去绘制文本。 保存工程/加载工程时时&#xff0…

用Python写个爬虫,赚了!

前言 编程语言排行榜(Tiobe)发布了11月新榜,Python仍领先Java和C,在全球众多的老牌编程语言中,以其他对手无法企及的极高份额稳居榜单第一位。 榜单数据是客观真实的,当下Python的使用者越来越多,已经远超使用其他十…

【Linux初阶】认识冯诺依曼结构

🌟hello,各位读者大大们你们好呀🌟 🍭🍭系列专栏:【Linux初阶】 ✒️✒️本篇内容:计算机的冯诺依曼组成结构、冯诺依曼结构的数据交换特性,以宏观视角理解冯诺依曼下的网络数据传输…

Spring Cloud Alibaba 容器化部署最佳实践 | 本地部署版本详解

环境声明 在运行本地示例之前,需要保证本机具备以下的基础环境,如果您的本地没有当前的环境,下面会一步步进行搭建,演示搭建过程。 Nacos 服务端Seata 服务端RocketMQ 服务端MySQL 服务端 可在国内https://gitee.com/mirrors/S…

低代码在离散制造业的实践

大家上午好,非常感谢明道云给我这个机会,来展示一下这个上海电气在明道云上面的应用。我的题目是《低代码在离散制造业的实践》。 引入明道云的背景 首先介绍一下我们电气数字科技有限公司。它是在2018年的时候,上海电气集团内部成立的数科…

捷码全新快速表单功能解读

在最近的更新中,捷码迎来了比较多的功能上新,其中最受大家关注的是全新的表单功能。无论是从功能丰富度还是操作便利性上都做了大量设计。本文将从重点功能设置操作流程上进行演示说明。 表单控件和关联 ——1对1、1对n、n对n 支持多场景 首先是表单控…

航空货运数据挖掘那些事|航班换季

目录前言航班换季航班换季对航空货运业务有哪些影响参考文献前言 就在上个月月底,即2022年10月29日到2022年10月30日,中国民航完成了2022年的夏秋季航季到2022/23年冬春航季切换工作,俗称航班换季,那么何为航班换季呢&#xff0c…

流媒体传输 - RTMP 协议

RTMP 是 Real Time Messaging Protocol(实时消息传输协议)的首字母缩写。它是由 Adobe 公司提出的一种应用层的协议,用来解决多媒体数据传输流的多路复用(Multiplexing)和分包(packetizing)的问…

氨基苯酚/多巴胺仿生修饰碳纳米管/α-氧化铝/ CNTs-Ag纳米复合材料

小编下面和大家来看间氨基苯酚/多巴胺仿生修饰碳纳米管/α-氧化铝/ CNTs-Ag纳米复合材料的制备! 多巴胺仿生修饰材料的研究: 通过表面聚多巴胺层与银离子的螯合作用,通过表面聚多巴胺与银离子的螯合作用,利用葡萄糖作还原剂,在聚多巴胺修饰的聚酯纤维表…

HarmonyOS应用API手势方法-PanGesture

描述:用于触发拖动手势事件,滑动的最小距离为5vp时拖动手势识别成功。 Api:从API Version 7开始支持 接口: PanGesture(value?: { fingers?: number; direction?: PanDirection; distance?: number } | PanGestureOptions)…

IT6225/IT6225B Type-C转HDMI 4K60设计方案

ITE(新联阳)的IT6225/IT6225B,是一款Type-C转HDMI 460K的视频转换芯片 通过USB Type-C连接器将DP RX视频信号转换为HDMI/DVI TX视频信号。DP信号转接只用2lane,另外2lane可以输出USB 3.0/3.1信号,同时兼容PD 3.0&…

Zabbix自动监控windows端口(主动监控方式)

第一部分:服务器上的操作(脚本&配置) 创建脚本文件 在客户端新建discovertcpport.bat文件,放在C:\Program Files\Zabbix Agent目录中,内容如下: echo off echo { echo "data":[ f…

[附源码]计算机毕业设计springboot创意摄影交流平台

项目运行 环境配置: Jdk1.8 Tomcat7.0 Mysql HBuilderX(Webstorm也行) Eclispe(IntelliJ IDEA,Eclispe,MyEclispe,Sts都支持)。 项目技术: SSM mybatis Maven Vue 等等组成,B/S模式 M…

python面向对象进阶-继承、多态

继承 python面向对象的继承指的是多个类之间的所属关系,及子类默认继承父类的所有属性和方法#父类A class A(object):def __init__(self):self.num 1#定义成员函数:方法def info_print(self):print(self.num)#子类,继承父类 class B(A):pass…