ubuntu

Ubuntu C++性能分析怎么做

小樊
43
2025-12-03 08:41:08
栏目: 编程语言

Ubuntu 下 C++ 性能分析实操指南

一 准备与基线

二 工具速览与选型

工具 开销 主要用途 典型场景 关键要点
perf CPU 热点、调用栈、硬件事件 线上/准线上采样、定位函数级瓶颈 perf record -g ./app + perf report,支持 perf topperf stat
gperftools CPU Profiler 采样 CPU 热点、生成火焰图 生产/预发低开销分析 代码插桩 ProfilerStart/StopCPUPROFILE=prof.outpprof 生成文本/火焰图
Valgrind Callgrind 高(10–20×) 指令级热点、调用关系 开发阶段精确分析 callgrind + kcachegrind 可视化
Valgrind Massif 堆内存占用与分配栈 内存峰值、泄漏定位 ms_print 查看堆时间线
Valgrind Memcheck 内存错误(泄漏、越界、未初始化) 功能正确性 --leak-check=full 精确定位
strace 系统调用跟踪 I/O、文件/网络瓶颈 strace -T -p <PID> 观察耗时
gprof 函数级时间占比 简单项目、无符号需求 编译加 -pg,运行生成 gmon.out 再分析

三 快速上手流程

四 进阶与系统瓶颈排查

五 常见问题与排错

0
看了该问题的人还看了