legongju.com
我们一直在努力
2024-12-28 21:21 | 星期六

linux perf命令分析结果

perf 是一个用于分析 Linux 系统性能的强大工具

  1. perf record:用于记录性能事件。它会在指定的时间间隔内收集系统中的性能事件数据,并将它们写入一个名为 perf.data 的文件中。例如,要记录 CPU 使用率、内存访问和磁盘 I/O 事件,可以使用以下命令:
sudo perf record -e cpu-clock -e memory-access -e disk-io -- sleep 60

这将记录 60 秒内的性能事件数据。

  1. perf report:用于分析 perf.data 文件中的性能事件数据。它会生成一个易于理解的报告,显示各种性能事件的计数、百分比和耗时等信息。例如,要分析刚刚记录的 perf.data 文件,可以使用以下命令:
sudo perf report -n --stdio

这将显示一个类似于以下的报告:

# Overhead   Command  Shared Object  Symbol
# ........  ........  .............  ......
#
    50.00%  myprog    myprog          [.] my_function
             |
             |--50.00%-- main
             |          start_thread
             |
             |--50.00%-- main
             |          clone

这个报告表示 my_function 函数占用了 50% 的 CPU 时间,而 main 函数也占用了 50% 的 CPU 时间。

  1. perf stat:用于收集和报告系统性能统计信息。它可以帮助您了解系统的整体性能,例如 CPU 使用率、内存访问次数和磁盘 I/O 操作等。例如,要收集系统性能统计信息,可以使用以下命令:
sudo perf stat -I 1000

这将每 1000 毫秒收集一次性能统计信息。

  1. perf diff:用于比较两个 perf.data 文件之间的性能差异。它可以帮助您了解在两个不同版本之间的性能变化。例如,要比较两个版本的 perf.data 文件,可以使用以下命令:
sudo perf diff --stdio file1.perf.data file2.perf.data

这将显示一个类似于以下的报告:

# Diff: myprog-0.1 vs myprog-0.2
#
# Overhead Command  Shared Object Symbol
# ........  ........  .............  ......
#
     -5.00%  myprog    myprog          [.] my_function
             |
             |--5.00%-- main
             |          start_thread
             |
             |--5.00%-- main
             |          clone

这个报告表示 my_function 函数在 myprog-0.2 版本中比 myprog-0.1 版本慢了 5%。

这些只是 perf 命令的一些基本用法。您可以通过查看手册页(man perf)和在线文档来了解更多关于 perf 的信息。

未经允许不得转载 » 本文链接:https://www.legongju.com/article/50583.html

相关推荐

  • Linux下mkdir创建目录会失败吗

    Linux下mkdir创建目录会失败吗

    在Linux下,使用mkdir命令创建目录通常是可行的 权限问题:如果你没有足够的权限在指定位置创建新目录,那么mkdir命令可能会失败。你可以使用ls -ld /path/to/di...

  • Linux mkdir命令有哪些使用技巧

    Linux mkdir命令有哪些使用技巧

    mkdir命令在Linux中用于创建新的目录。以下是一些使用技巧: 创建多层目录:如果你需要创建一个多层的目录结构,可以使用连续的-p选项。例如:
    mkdir -p pa...

  • Linux mkdir目录创建失败的原因

    Linux mkdir目录创建失败的原因

    Linux中mkdir命令用于创建新目录,如果创建失败,可能的原因有以下几点: 权限问题:当前用户可能没有足够的权限在当前目录下创建新目录。可以尝试使用sudo命令提...

  • Linux mkdir命令能否创建隐藏目录

    Linux mkdir命令能否创建隐藏目录

    Linux的mkdir命令可以创建隐藏目录。在Linux中,以“.”开头的目录被视为隐藏目录,这些目录在默认情况下不会显示。但是,使用mkdir命令仍然可以创建这样的目录,...

  • linux perf命令怎样优化

    linux perf命令怎样优化

    perf 是一个强大的 Linux 性能分析工具,可以帮助你诊断和优化系统性能问题 确保内核已编译并启用了 perf_event 支持。你可以通过以下命令检查:
    cat /proc...

  • linux perf命令采集什么

    linux perf命令采集什么

    Linux的perf命令是一个强大的性能分析工具,它可以用来采集、分析和报告系统和应用程序的性能数据 指令执行:perf可以记录程序执行期间的指令执行情况,包括指令...

  • linux perf命令如何查看

    linux perf命令如何查看

    perf 是一个强大的 Linux 性能分析工具,它可以帮助您诊断和优化系统性能 查看 perf 命令的可用选项和帮助信息: perf --help 使用 perf 记录性能事件: sudo pe...

  • linux sudo命令安全策略

    linux sudo命令安全策略

    sudo(superuser do)是一个在Linux系统中用于执行命令的程序,它允许普通用户以超级用户(root)权限执行特定命令 使用强密码:为每个用户设置复杂且难以猜测的...