---
title: 系统性能分析工具简介
description: "系统性能分析是针对基于鲲鹏的服务器的性能分析工具，能收集服务器的处理器硬件、操作系统、进程/线程、函数等各层次的性能数据，分析出系统性能指标，定位到系统瓶颈点及热点函数，给出优化建议。该工具可以辅助用户快速定位和处理软件性能问题。"
url: https://www.hikunpeng.com/document/detail/zh/nativedevp/twp/Kunpeng_Development_0026.html
sourcePath: /source/zh/nativedevp/twp/Kunpeng_Development_0026.html
indexId: 8c9a35f055a193b6533243619fd7c10a22ad80fb47414c3269f2fbcff413cc8955
---
# 系统性能分析工具简介

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

图1 系统性能分析工具


**表1 任务描述**

| 任务分类 | 任务子分类 | 描述 |
| --- | --- | --- |
| 通用分析 | 热点函数分析 | 分析C/C++程序代码，找出性能瓶颈点，获得对应的热点函数，支持通过 火焰图 展示函数的调用关系，给出优化路径。 |
| 系统部件分析 | NUMA精细化分析 | 基于ARM SPE （Statistical Profiling Extension）能力实现。SPE针对指令进行采样，同时记录一些触发事件的信息，包括精确的PC指针信息。利用SPE能力可以用于收集系统中所有进程的NUMA性能，找到Top N (e.g. N = 10) NUMA性能最差的进程及这些进程中的内存热区，各NUMA节点间内存访问统计矩阵，识别节点间内存访问不平衡状态，并得到相关优化建议。 |
| 系统部件分析 | I/O分析 | 分析存储IO性能。以存储块设备为分析对象，分析得出块设备的I/O操作次数、I/O数据大小、I/O队列深度、I/O操作时延等性能数据，并关联到造成这些I/O性能数据的具体I/O操作事件、进程/线程、调用栈、应用层I/O APIs等信息。根据I/O性能数据分析给出进一步优化建议。 |
| 专项分析 | 锁与等待分析 | 分析glibc和开源软件（如MySQL、OpenMP）的锁与等待函数（包括sleep、usleep、mutex、cond、spinlock、rwlock、semaphore等），关联到其归属的进程和调用点，并根据当前已有的优化经验给出优化建议。 |
| 专项分析 | HPC应用分析 | HPC应用分析通过采集系统的PMU事件并配合采集面向MPI/MPI+OpenMP应用的关键指标，从而帮助用户精准获得Parallel region及Barrier\-to\-Barrier的串行及并行时间，校准的L2层微架构指标，指令分布及L3的利用率和内存带宽等信息。 |
| 对比分析 | \- | 支持对同一种类型分析任务的结果，选择同一节点或者不同节点间进行比较，从而快速获得不同分析结果之间的差别，定位性能指标的变化，快速识别优化手段的效果。 |
