perf 命令

yum install perf -y
[root@k8s bin]# perf -h

 usage: perf [--version] [--help] [OPTIONS] COMMAND [ARGS]

 The most commonly used perf commands are:
   annotate        Read perf.data (created by perf record) and display annotated code
   archive         Create archive with object files with build-ids found in perf.data file
   bench           General framework for benchmark suites
   buildid-cache   Manage build-id cache.
   buildid-list    List the buildids in a perf.data file
   c2c             Shared Data C2C/HITM Analyzer.
   config          Get and set variables in a configuration file.
   data            Data file related processing
   diff            Read perf.data files and display the differential profile
   evlist          List the event names in a perf.data file
   ftrace          simple wrapper for kernel's ftrace functionality
   inject          Filter to augment the events stream with additional information
   kallsyms        Searches running kernel for symbols
   kmem            Tool to trace/measure kernel memory properties
   kvm             Tool to trace/measure kvm guest os
   list            List all symbolic event types
   lock            Analyze lock events
   mem             Profile memory accesses
   record          Run a command and record its profile into perf.data
   report          Read perf.data (created by perf record) and display the profile
   sched           Tool to trace/measure scheduler properties (latencies)
   script          Read perf.data (created by perf record) and display trace output
   stat            Run a command and gather performance counter statistics
   test            Runs sanity tests.
   timechart       Tool to visualize total system behavior during a workload
   top             System profiling tool.
   version         display the version of perf binary
   probe           Define new dynamic tracepoints
   trace           strace inspired tool

 See 'perf help COMMAND' for more information on a specific command.
perf 是一个用于性能分析的工具,主要用于 Linux 系统。以下常用命令的简要解释:

annotate: 读取 perf.data 文件,并显示带注释的代码,帮助你查看性能数据与源代码的对应关系。
archive: 创建一个包含 perf.data 文件中找到的对象文件及其构建ID的归档文件。
bench: 提供一个通用框架,用于基准测试套件。
buildid-cache: 管理构建ID缓存,帮助快速查找对象文件。
buildid-list: 列出 perf.data 文件中的所有构建ID。
c2c: 共享数据C2C/HITM分析工具,分析缓存一致性问题。
config: 获取和设置配置文件中的变量。
data: 处理与数据文件相关的操作。
diff: 比较两个 perf.data 文件,并显示差异化的性能分析。
evlist: 列出 perf.data 文件中事件的名称。
ftrace: 简单的内核 ftrace 功能的包装工具,用于跟踪函数调用。
inject: 过滤器,用于增强事件流,添加额外信息。
kallsyms: 在运行中的内核中搜索符号。
kmem: 工具,用于跟踪和测量内核内存属性。
kvm: 工具,用于跟踪和测量 KVM 客户操作系统的性能。
list: 列出所有符号事件类型。
lock: 分析锁事件,帮助识别性能瓶颈。
mem: 分析内存访问情况,帮助优化内存性能。
record: 运行命令并将其性能数据记录到 perf.data 文件中。
report: 读取 perf.data 文件并显示性能分析报告。
sched: 跟踪和测量调度程序的属性(如延迟)。
script: 读取 perf.data 文件并显示跟踪输出,便于分析。
stat: 运行命令并收集性能计数器统计信息。
test: 运行一些基本的自检测试。
timechart: 可视化工作负载期间系统的整体行为。
top: 系统性能分析工具,实时显示系统性能。
version: 显示 perf 二进制文件的版本信息。
probe: 定义新的动态跟踪点,允许用户在特定位置插入跟踪。
trace: 类似于 strace 的工具,用于跟踪系统调用。

# 1. 记录性能数据
perf record -e cpu-cycles ./my_application
# 记录 my_application 的 CPU 周期数据。

# 2. 查看记录的性能报告
perf report
# 显示上一次记录的性能数据报告。

# 3. 分析内存访问
perf mem record ./my_application
# 记录 my_application 的内存操作数据。

# 4. 显示内存访问报告
perf mem report
# 显示内存访问的分析报告。

# 5. 监控特定 CPU
perf stat -C 0,1 ./my_application
# 在 CPU 0 和 1 上运行 my_application 并收集统计信息。

# 6. 记录特定事件
perf record -e cache-misses ./my_application
# 记录 my_application 的缓存未命中事件。

# 7. 生成时间图表
perf timechart record ./my_application
# 生成 my_application 的时间图表。

# 8. 显示事件列表
perf list
# 列出所有可用的性能事件。

# 9. 查看特定事件的统计信息
perf stat -e instructions,cycles ./my_application
# 统计 my_application 的指令和周期数。

# 10. 记录并显示内核事件
perf record -e irq:irq_handler_entry ./my_kernel_module
perf report
# 记录内核中 IRQ 处理程序的入口事件,并显示报告。

# 11. 过滤特定符号
perf report --symbol-filter=my_function
# 仅显示与 my_function 相关的性能数据。

# 12. 导出原始样本
perf mem -D ./my_application
# 将原始内存访问样本导出到屏幕。

# 13. 监控系统调用
perf trace
# 实时跟踪系统调用。

# 14. 进行对比分析
perf diff perf.data.old perf.data.new
# 比较两个性能数据文件之间的差异。

# 15. 记录用户空间和内核空间事件
perf record -K -U ./my_application
# 同时记录用户空间和内核空间的事件。

# 16. 使用自定义的事件类型
perf record -e cycles:u ./my_application
# 仅记录用户空间的 CPU 周期事件。

# 17. 监控特定的内存操作类型
perf mem -t load ./my_application
# 仅记录内存加载操作。

# 18. 查看特定 CPU 的性能统计
perf stat -C 0 ./my_application
# 仅在 CPU 0 上运行并收集统计信息。

# 19. 记录特定线程的性能数据
perf record -p <pid>
# 记录特定进程 ID(PID)对应的线程的性能数据。

# 20. 监控系统的 CPU 使用情况
perf stat -a ./my_application
# 在系统范围内监控 my_application 的 CPU 使用情况。

# 21. 记录内存使用情况
perf record -e page-faults ./my_application
# 记录 my_application 的页面错误事件。

# 22. 生成调用图
perf record -g ./my_application
perf report --stdio
# 生成调用图并在终端显示报告。

# 23. 记录并显示上下文切换
perf record -e context-switches ./my_application
perf report
# 记录上下文切换事件并显示报告。

# 24. 监控特定的文件 I/O 操作
perf record -e block:block_rq_issue ./my_application
perf report
# 记录块设备请求发起事件。

# 25. 记录程序的执行时间
perf stat -e task-clock ./my_application
# 统计程序的执行时间。

# 26. 监控系统调用的延迟
perf record -e syscalls:sys_enter_* ./my_application
perf report
# 记录所有系统调用的入口事件。

# 27. 记录内存带宽使用情况
perf record -e bus-cycles ./my_application
# 记录总线周期事件,分析内存带宽。

# 28. 使用过滤器仅显示特定模块的数据
perf report --dsos=my_module.so
# 仅显示与 my_module.so 相关的性能数据。

# 29. 监控特定的 CPU 核心
perf stat -C 1 -e cycles,instructions ./my_application
# 在 CPU 核心 1 上统计周期和指令数。

# 30. 记录并显示硬件事件
perf record -e L1-dcache-load-misses ./my_application
perf report
# 记录 L1 数据缓存加载未命中事件。

# 31. 以 JSON 格式导出报告
perf script -i perf.data > output.json
# 将性能数据导出为 JSON 格式。

# 32. 监控内存访问延迟
perf mem record -t load ./my_application
perf mem report
# 记录内存加载的访问延迟。

# 33. 生成火焰图
perf script | ./stackcollapse-perf.pl | ./flamegraph.pl > flamegraph.svg
# 生成火焰图,分析性能瓶颈。

# 34. 设置采样频率
perf record -F 99 ./my_application
# 以 99 Hz 的频率进行采样。

# 35. 记录所有线程的性能数据
perf record -e cpu-cycles -a
# 记录系统中所有线程的 CPU 周期数据。

# 36. 监控内存分配
perf record -e malloc ./my_application
perf report
# 记录内存分配事件。

# 37. 仅显示未解析符号
perf report --hide-unresolved
# 仅显示已解析符号的性能数据。

# 38. 监控 CPU 缓存命中
perf stat -e cache-references,cache-misses ./my_application
# 统计缓存引用和未命中事件。

# 39. 记录并分析用户空间的 CPU 使用
perf record -e cpu-clock -U ./my_application
perf report
# 记录用户空间的 CPU 使用情况。

# 40. 监控特定的内核函数
perf record -e kmalloc ./my_kernel_module
perf report
# 记录内核模块中的 kmalloc 函数调用。

# 41. 记录并分析上下文切换
perf record -e context-switches ./my_application
perf report
# 记录上下文切换事件并生成报告。

# 42. 监控 CPU 频率
perf stat -e cpu-clock,task-clock ./my_application
# 统计 CPU 时钟和任务时钟。

# 43. 记录特定事件并输出到文件
perf record -o output.data -e cycles ./my_application
# 将性能数据输出到 output.data 文件中。

# 44. 监控特定的系统调用
perf trace -e sys_enter_open ./my_application
# 监控 open 系统调用的执行情况。

# 45. 记录并显示硬件性能事件
perf record -e instructions,cache-misses ./my_application
perf report
# 记录指令和缓存未命中事件。

# 46. 监控线程的 CPU 使用情况
perf stat -p <pid>
# 监控特定进程的 CPU 使用情况。

# 47. 记录内存分配和释放
perf record -e malloc,free ./my_application
perf report
# 记录内存分配和释放事件。

# 48. 监控 I/O 操作
perf record -e block:block_rq_complete ./my_application
perf report
# 记录块设备请求完成事件。

# 49. 监控系统调用的返回值
perf trace -e sys_exit_* ./my_application
# 监控所有系统调用的返回情况。

# 50. 监控特定的用户空间函数
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 51. 生成详细的调用图
perf record -g ./my_application
perf script > out.txt
# 生成详细的调用图并输出到 out.txt 文件。

# 52. 监控特定的内存区域
perf mem record -a -t load ./my_application
# 记录所有内存加载操作。

# 53. 记录并分析 CPU cache 事件
perf record -e cache-misses,cache-references ./my_application
perf report
# 记录和分析缓存未命中和引用事件。

# 54. 监控特定的内核事件
perf record -e irq:irq_handler_exit ./my_application
perf report
# 记录 IRQ 处理程序退出事件。

# 55. 监控特定的进程
perf top -p <pid>
# 实时监控特定进程的性能数据。

# 56. 记录并分析系统级性能
perf record -a ./my_application
perf report
# 在系统级别记录性能数据并生成报告。

# 57. 监控 CPU 负载
perf stat -a -e cpu-load ./my_application
# 监控 CPU 负载情况。

# 58. 监控内存访问模式
perf mem record -t store ./my_application
# 记录内存存储操作。

# 59. 监控上下文切换的频率
perf stat -e context-switches ./my_application
# 统计上下文切换的频率。

# 60. 监控所有 CPU 的性能
perf stat -a ./my_application
# 在所有 CPU 上监控 my_application 的性能。


# 61. 记录并分析特定进程的内存使用
perf record -e malloc ./my_application
perf report
# 记录内存分配事件并生成报告。

# 62. 监控系统调用的详细信息
perf trace -e syscalls:sys_enter_* ./my_application
# 监控所有系统调用的进入事件。

# 63. 监控特定的 CPU 硬件事件
perf stat -e cycles,instructions,cache-misses ./my_application
# 统计 CPU 周期、指令和缓存未命中事件。

# 64. 记录并分析线程的 CPU 使用情况
perf record -p <pid> -g
perf report
# 记录特定线程的调用图。

# 65. 监控内存访问的延迟
perf mem record -t load ./my_application
perf mem report
# 记录内存加载的延迟。

# 66. 监控 I/O 事件
perf record -e block:block_rq_issue ./my_application
perf report
# 记录块设备请求的发起事件。

# 67. 监控特定的内核模块
perf record -e kmalloc -m 1024 ./my_kernel_module
# 记录内核模块中的内存分配事件。

# 68. 记录并分析 CPU 频率变化
perf stat -e cpu-cycles,task-clock ./my_application
# 统计 CPU 周期和任务时钟。

# 69. 监控特定的内存区域
perf mem record -a -t load ./my_application
# 记录所有内存加载操作。

# 70. 监控系统的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定进程的上下文切换。

# 71. 生成火焰图
perf script | ./stackcollapse-perf.pl | ./flamegraph.pl > flamegraph.svg
# 生成火焰图以可视化性能瓶颈。

# 72. 记录并显示内存分配
perf record -e kmalloc ./my_application
perf report
# 记录内存分配事件。

# 73. 监控特定的 CPU 核心
perf stat -C 0 -e cycles,instructions ./my_application
# 在 CPU 核心 0 上监控性能数据。

# 74. 监控特定的用户空间函数
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 75. 记录并分析内存访问模式
perf record -e page-faults ./my_application
perf report
# 记录页面错误事件的发生。

# 76. 监控系统调用的返回值
perf trace -e sys_exit_* ./my_application
# 监控所有系统调用的返回情况。

# 77. 监控特定的内存分配函数
perf record -e malloc,free ./my_application
perf report
# 记录内存分配和释放事件。

# 78. 监控 CPU cache 事件
perf record -e cache-misses,cache-references ./my_application
perf report
# 记录和分析缓存未命中和引用事件。

# 79. 监控特定的内核事件
perf record -e irq:irq_handler_exit ./my_application
perf report
# 记录 IRQ 处理程序的退出事件。

# 80. 监控所有 CPU 的性能
perf stat -a ./my_application
在所有 CPU 上监控 my_application 的性能。

# 81. 监控用户空间的 CPU 使用情况
perf stat -e cpu-clock -U ./my_application
# 监控用户空间的 CPU 使用情况。

# 82. 记录并分析内存访问
perf mem record -t store ./my_application
perf mem report
# 记录内存存储操作的访问情况。

# 83. 监控系统的 I/O 性能
perf stat -e block:block_rq_issue ./my_application
# 监控块设备请求的发起事件。

# 84. 监控系统调用的延迟
perf trace -e syscalls:sys_enter_* ./my_application
# 监控系统调用的进入事件及其延迟。

# 85. 记录并分析 CPU 性能
perf record -e cpu-cycles,instructions ./my_application
perf report
# 记录并分析 CPU 周期和指令。

# 86. 监控特定的内核函数
perf record -e kmalloc ./my_kernel_module
perf report
# 记录内核模块中的 kmalloc 函数调用。

# 87. 监控内存分配的详细信息
perf mem record -t malloc ./my_application
perf mem report
# 记录内存分配的详细信息。

# 88. 监控 CPU 的温度和频率
perf stat -e cpu-frequency,cpu-temperature ./my_application
# 监控 CPU 的温度和频率变化。

# 89. 记录并分析内存带宽
perf record -e bus-cycles ./my_application
perf report
# 记录总线周期事件以分析内存带宽。

# 90. 监控特定的进程的内存使用情况
perf stat -p <pid> -e page-faults
# 监控特定进程的页面错误事件。

# 91. 监控特定线程的系统调用
perf trace -p <pid> -e syscalls:sys_enter_* 
# 监控特定线程的所有系统调用进入事件。

# 92. 记录并分析 CPU 性能
perf record -e cpu-cycles,instructions,cache-misses ./my_application
perf report
# 记录 CPU 周期、指令和缓存未命中事件。

# 93. 监控内存分配的详细信息
perf mem record -t malloc,free ./my_application
perf mem report
# 记录内存分配和释放事件的详细信息。

# 94. 监控特定的内核事件
perf record -e page-faults ./my_application
perf report
# 记录页面错误事件,并生成分析报告。

# 95. 监控上下文切换的详细信息
perf record -e context-switches ./my_application
perf report
# 记录上下文切换事件并生成详细报告。

# 96. 监控特定的 CPU 核心
perf stat -C <cpu_id> ./my_application
# 在特定 CPU 核心上监控应用程序性能。

# 97. 监控进程的内存使用情况
perf stat -p <pid> -e page-faults,minor-faults,major-faults
# 监控特定进程的页面错误和内存使用情况。

# 98. 记录并分析内存访问模式
perf mem record -a -t load ./my_application
perf mem report
# 记录所有内存加载操作并生成报告。

# 99. 监控系统调用的返回值
perf trace -e sys_exit_* ./my_application
# 监控所有系统调用的返回情况。

# 100. 监控 I/O 性能
perf stat -e block:block_rq_complete ./my_application
# 监控块设备请求完成事件。

# 101. 记录并分析内存带宽
perf record -e bus-cycles ./my_application
perf report
# 记录总线周期事件以分析内存带宽。

# 102. 监控所有 CPU 的性能
perf stat -a ./my_application
# 在所有 CPU 上监控应用程序的性能。

# 103. 监控内存访问延迟
perf mem record -t load ./my_application
perf mem report
# 记录内存加载的延迟并生成报告。

# 104. 监控系统调用的延迟
perf trace -e syscalls:sys_enter_* ./my_application
# 监控系统调用的进入事件及其延迟。

# 105. 记录并分析 CPU cache 事件
perf record -e cache-misses,cache-references ./my_application
perf report
# 记录和分析缓存未命中和引用事件。

# 106. 监控特定内核模块的性能
perf record -e kmalloc ./my_kernel_module
perf report
# 记录特定内核模块中的内存分配事件。

# 107. 监控用户空间的 CPU 使用情况
perf stat -e cpu-clock -U ./my_application
# 监控用户空间的 CPU 使用情况。

# 108. 记录并分析上下文切换
perf record -e context-switches ./my_application
perf report
# 记录上下文切换事件并生成报告。

# 109. 监控特定的内存区域
perf mem record -a -t load ./my_application
# 记录所有内存加载操作。

# 110. 监控 CPU 频率变化
perf stat -e cpu-frequency,cpu-temperature ./my_application
# 监控 CPU 的温度和频率变化。

# 111. 记录并分析 I/O 性能
perf record -e block:block_rq_issue ./my_application
perf report
# 记录 I/O 请求事件并生成报告。

# 112. 监控特定的用户空间函数
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 113. 监控进程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定进程的上下文切换。

# 114. 监控内存分配的详细信息
perf mem record -t malloc ./my_application
perf mem report
# 记录内存分配的详细信息。

# 115. 记录并分析 CPU 性能
perf record -e cpu-cycles,instructions ./my_application
perf report
# 记录并分析 CPU 周期和指令。

# 116. 监控特定的内核事件
perf record -e irq:irq_handler_exit ./my_application
perf report
# 记录 IRQ 处理程序的退出事件。

# 117. 监控所有 CPU 的性能
perf stat -a ./my_application
# 在所有 CPU 上监控应用程序的性能。

# 118. 监控用户空间的 CPU 使用情况
perf stat -e cpu-clock -U ./my_application
# 监控用户空间的 CPU 使用情况。

# 119. 记录并分析内存访问模式
perf mem record -t load ./my_application
perf mem report
# 记录内存加载的访问情况。

# 120. 监控系统的 I/O 性能
perf stat -e block:block_rq_issue ./my_application
# 监控块设备请求的发起事件。


# 121. 监控特定 CPU 核心的性能
perf stat -C <cpu_id> -e cycles,instructions ./my_application
# 在指定 CPU 核心上监控周期和指令数。

# 122. 记录并分析内存访问的延迟
perf mem record -t load,store ./my_application
perf mem report
# 记录内存加载和存储操作的访问延迟。

# 123. 监控特定的系统调用
perf trace -e syscalls:sys_enter_read,syscalls:sys_exit_read ./my_application
# 监控 read 系统调用的进入和退出事件。

# 124. 记录并分析上下文切换
perf record -e context-switches ./my_application
perf report
# 记录上下文切换事件并生成分析报告。

# 125. 监控内存分配的详细信息
perf mem record -t malloc,free -a ./my_application
perf mem report
# 记录所有进程的内存分配和释放事件。

# 126. 监控系统的 I/O 性能
perf stat -e block:block_rq_issue,block:block_rq_complete ./my_application
# 监控块设备请求的发起和完成事件。

# 127. 记录并分析 CPU cache 事件
perf record -e cache-misses,cache-references ./my_application
perf report
# 记录和分析 CPU 缓存未命中和引用事件。

# 128. 监控特定线程的性能
perf stat -p <pid> -e cpu-clock,context-switches
# 监控特定线程的 CPU 时钟和上下文切换。

# 129. 记录并分析系统调用的延迟
perf record -e syscalls:sys_enter_* ./my_application
perf report
# 记录所有系统调用的进入事件并生成报告。

# 130. 监控内存使用情况
perf stat -e page-faults,minor-faults,major-faults ./my_application
# 监控页面错误和内存使用情况。

# 131. 记录并分析 I/O 请求
perf record -e block:block_rq_issue ./my_application
perf report
# 记录块设备请求的发起事件并生成报告。

# 132. 监控用户空间的 CPU 使用情况
perf stat -e cpu-clock -U ./my_application
# 监控用户空间的 CPU 使用情况。

# 133. 监控系统调用的返回值
perf trace -e sys_exit_* ./my_application
# 监控所有系统调用的返回情况。

# 134. 监控特定的内存区域
perf mem record -a -t load ./my_application
perf mem report
# 记录所有内存加载操作并生成报告。

# 135. 监控特定内核模块的性能
perf record -e kmalloc -m 1024 ./my_kernel_module
perf report
# 记录特定内核模块中的内存分配事件。

# 136. 监控 CPU 的温度和频率
perf stat -e cpu-frequency,cpu-temperature ./my_application
# 监控 CPU 的温度和频率变化。

# 137. 记录并分析内存带宽
perf record -e bus-cycles ./my_application
perf report
# 记录总线周期事件以分析内存带宽。

# 138. 监控进程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定进程的上下文切换。

# 139. 监控特定的用户空间函数
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 140. 监控内存访问的延迟
perf mem record -t load ./my_application
perf mem report
# 记录内存加载的延迟并生成报告。

# 141. 监控 I/O 性能
perf stat -e block:block_rq_issue ./my_application
# 监控块设备请求的发起事件。

# 142. 记录并分析 CPU 性能
perf record -e cpu-cycles,instructions ./my_application
perf report
# 记录并分析 CPU 周期和指令。

# 143. 监控特定的内核事件
perf record -e irq:irq_handler_exit ./my_application
perf report
# 记录 IRQ 处理程序的退出事件。

# 144. 监控所有 CPU 的性能
perf stat -a ./my_application
# 在所有 CPU 上监控应用程序的性能。

# 145. 监控用户空间的 CPU 使用情况
perf stat -e cpu-clock -U ./my_application
# 监控用户空间的 CPU 使用情况。

# 146. 记录并分析内存访问模式
perf mem record -t load ./my_application
perf mem report
# 记录内存加载的访问情况。

# 147. 监控系统的 I/O 性能
perf stat -e block:block_rq_issue ./my_application
# 监控块设备请求的发起事件。

# 148. 监控特定的系统调用
perf trace -e syscalls:sys_enter_open,syscalls:sys_exit_open ./my_application
# 监控 open 系统调用的进入和退出事件。

# 149. 记录并分析上下文切换
perf record -e context-switches ./my_application
perf report
# 记录上下文切换事件并生成报告。

# 150. 监控内存分配的详细信息
perf mem record -t malloc,free -a ./my_application
perf mem report
# 记录所有进程的内存分配和释放事件。


# 151. 监控特定进程的系统调用
perf trace -p <pid> -e syscalls:sys_enter_* 
# 监控特定进程的所有系统调用进入事件。

# 152. 记录并分析 CPU 的上下文切换
perf record -e context-switches ./my_application
perf report
# 记录 CPU 上下文切换事件并生成报告。

# 153. 监控内存使用情况
perf stat -e page-faults,minor-faults,major-faults ./my_application
# 监控页面错误和内存使用情况。

# 154. 监控特定线程的 CPU 使用情况
perf stat -p <pid> -e cpu-clock,instructions
# 监控特定线程的 CPU 时钟和指令数。

# 155. 记录并分析内存分配
perf mem record -t malloc ./my_application
perf mem report
# 记录内存分配的详细信息并生成报告。

# 156. 监控 I/O 性能
perf stat -e block:block_rq_issue,block:block_rq_complete ./my_application
# 监控块设备请求的发起和完成事件。

# 157. 记录并分析 CPU cache 事件
perf record -e cache-misses,cache-references ./my_application
perf report
# 记录和分析 CPU 缓存未命中和引用事件。

# 158. 监控特定的内核模块
perf record -e kmalloc ./my_kernel_module
perf report
# 记录特定内核模块中的内存分配事件。

# 159. 监控系统调用的延迟
perf trace -e syscalls:sys_enter_* ./my_application
# 监控所有系统调用的进入事件及其延迟。

# 160. 记录并分析系统的 I/O 性能
perf record -e block:block_rq_issue ./my_application
perf report
# 记录块设备请求的发起事件并生成报告。

# 161. 监控用户空间的 CPU 使用情况
perf stat -e cpu-clock -U ./my_application
# 监控用户空间的 CPU 使用情况。

# 162. 监控特定的系统调用
perf trace -e syscalls:sys_enter_read,syscalls:sys_exit_read ./my_application
# 监控 read 系统调用的进入和退出事件。

# 163. 监控进程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定进程的上下文切换。

# 164. 记录并分析内存访问模式
perf mem record -t load,store ./my_application
perf mem report
# 记录内存加载和存储操作的访问情况。

# 165. 监控特定 CPU 核心的性能
perf stat -C <cpu_id> -e cycles,instructions ./my_application
# 在指定 CPU 核心上监控周期和指令数。

# 166. 监控 I/O 请求
perf stat -e block:block_rq_issue ./my_application
# 监控块设备请求的发起事件。

# 167. 监控特定的内存区域
perf mem record -a -t load ./my_application
perf mem report
# 记录所有内存加载操作并生成报告。

# 168. 监控系统的 CPU 使用情况
perf stat -e cpu-clock ./my_application
# 监控系统的 CPU 使用情况。

# 169. 记录并分析 CPU 性能
perf record -e cpu-cycles,instructions ./my_application
perf report
# 记录并分析 CPU 周期和指令。

# 170. 监控特定的用户空间函数
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 171. 监控内存分配的详细信息
perf mem record -t malloc,free -a ./my_application
perf mem report
# 记录所有进程的内存分配和释放事件。

# 172. 监控系统调用的返回值
perf trace -e sys_exit_* ./my_application
# 监控所有系统调用的返回情况。

# 173. 监控 CPU 的温度和频率
perf stat -e cpu-frequency,cpu-temperature ./my_application
# 监控 CPU 的温度和频率变化。

# 174. 记录并分析内存带宽
perf record -e bus-cycles ./my_application
perf report
# 记录总线周期事件以分析内存带宽。

# 175. 监控特定的内核事件
perf record -e irq:irq_handler_exit ./my_application
perf report
# 记录 IRQ 处理程序的退出事件。

# 176. 监控所有 CPU 的性能
perf stat -a ./my_application
# 在所有 CPU 上监控应用程序的性能。

# 177. 监控用户空间的 CPU 使用情况
perf stat -e cpu-clock -U ./my_application
# 监控用户空间的 CPU 使用情况。

# 178. 记录并分析内存访问模式
perf mem record -t load ./my_application
perf mem report
记录内存加载的访问情况。

# 179. 监控特定进程的系统调用
perf trace -p <pid> -e syscalls:sys_enter_* 
# 监控特定进程的所有系统调用进入事件。

# 180. 监控内存使用情况
perf stat -e page-faults,minor-faults,major-faults ./my_application
# 监控页面错误和内存使用情况。


# 181. 监控特定进程的内存使用情况
perf stat -e page-faults,minor-faults,major-faults -p <pid>
# 监控特定进程的页面错误和内存使用。

# 182. 记录并分析系统调用的延迟
perf record -e syscalls:sys_enter_* ./my_application
perf report
# 记录所有系统调用的进入事件并生成报告。

# 183. 监控特定 CPU 核心的缓存命中率
perf stat -C <cpu_id> -e cache-misses,cache-references ./my_application
# 在特定 CPU 核心上监控缓存未命中和引用。

# 184. 监控进程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定进程的上下文切换。

# 185. 记录并分析内存分配
perf mem record -t malloc,free -a ./my_application
perf mem report
# 记录所有进程的内存分配和释放事件。

# 186. 监控 I/O 性能
perf stat -e block:block_rq_issue,block:block_rq_complete ./my_application
# 监控块设备请求的发起和完成事件。

# 187. 监控特定线程的 CPU 使用情况
perf stat -p <pid> -e cpu-clock,instructions
# 监控特定线程的 CPU 时钟和指令数。

# 188. 监控特定的内存区域
perf mem record -a -t load ./my_application
perf mem report
# 记录所有内存加载操作并生成报告。

# 189. 监控系统调用的返回值
perf trace -e syscalls:sys_exit_* ./my_application
# 监控所有系统调用的返回情况。

# 190. 记录并分析 CPU 性能
perf record -e cpu-cycles,instructions ./my_application
perf report
# 记录并分析 CPU 周期和指令。

# 191. 监控内存访问的延迟
perf mem record -t load ./my_application
perf mem report
# 记录内存加载的延迟并生成报告。

# 192. 监控特定用户空间函数的调用情况
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 193. 监控 CPU 的温度和频率
perf stat -e cpu-frequency,cpu-temperature ./my_application
# 监控 CPU 的温度和频率变化。

# 194. 监控内存分配的详细信息
perf mem record -t malloc,free ./my_application
perf mem report
# 记录内存分配和释放的详细信息。

# 195. 监控特定内核模块的性能
perf record -e kmalloc ./my_kernel_module
perf report
# 记录特定内核模块中的内存分配事件。

# 196. 监控所有 CPU 的性能
perf stat -a ./my_application
# 在所有 CPU 上监控应用程序的性能。

# 197. 监控特定的内核事件
perf record -e irq:irq_handler_exit ./my_application
perf report
# 记录 IRQ 处理程序的退出事件。

# 198. 监控特定线程的内存使用情况
perf stat -e page-faults -p <pid>
# 监控特定线程的页面错误。

# 199. 记录并分析 CPU cache 事件
perf record -e cache-misses,cache-references ./my_application
perf report
# 记录和分析 CPU 缓存未命中和引用事件。

# 200. 监控系统的 I/O 性能
perf stat -e block:block_rq_issue ./my_application
# 监控块设备请求的发起事件。

# 201. 监控特定进程的 CPU 使用情况
perf stat -p <pid> -e cpu-clock,instructions,cycles
# 监控特定进程的 CPU 时钟、指令和周期。

# 202. 记录并分析上下文切换
perf record -e context-switches ./my_application
perf report
# 记录上下文切换事件并生成报告。

# 203. 监控内存带宽使用情况
perf stat -e bus-cycles,cache-misses ./my_application
# 监控总线周期和缓存未命中。

# 204. 监控特定系统调用的延迟
perf trace -e syscalls:sys_enter_open,syscalls:sys_exit_open ./my_application
# 监控 open 系统调用的进入和退出事件。

# 205. 记录并分析内存访问模式
perf mem record -t load,store ./my_application
perf mem report
# 记录内存加载和存储操作的访问情况。

# 206. 监控 CPU 的硬件事件
perf stat -e cycles,instructions,cache-misses ./my_application
# 监控硬件事件,包括周期、指令和缓存未命中。

# 207. 监控特定进程的 I/O 性能
perf stat -e block:block_rq_issue,block:block_rq_complete -p <pid>
# 监控特定进程的块设备请求。

# 208. 记录并分析系统调用的性能
perf record -e syscalls:sys_enter_* ./my_application
perf report
# 记录所有系统调用的进入事件并生成报告。

# 209. 监控内存分配情况
perf mem record -t malloc -a ./my_application
perf mem report
# 记录所有进程的内存分配并生成报告。

# 210. 监控特定内核模块的性能
perf record -e kmalloc -p <pid> ./my_kernel_module
perf report
# 记录特定内核模块中的内存分配事件。

# 211. 监控系统调用的返回值
perf trace -e syscalls:sys_exit_* ./my_application
# 监控所有系统调用的返回情况。

# 212. 监控 CPU 的温度和频率
perf stat -e cpu-frequency,cpu-temperature ./my_application
# 监控 CPU 的温度和频率变化。

# 213. 监控内存使用情况
perf stat -e page-faults,minor-faults,major-faults ./my_application
# 监控页面错误和内存使用情况。

# 214. 记录并分析 CPU 性能
perf record -e cpu-cycles,instructions ./my_application
perf report
# 记录并分析 CPU 周期和指令。

# 215. 监控特定线程的 CPU 使用情况
perf stat -p <pid> -e cpu-clock,instructions
# 监控特定线程的 CPU 时钟和指令数。

# 216. 监控系统的 I/O 性能
perf stat -e block:block_rq_issue ./my_application
# 监控块设备请求的发起事件。

# 217. 监控特定用户空间函数的调用情况
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 218. 监控内存访问的延迟
perf mem record -t load ./my_application
perf mem report
# 记录内存加载的延迟并生成报告。

# 219. 监控特定线程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定线程的上下文切换。

# 220. 监控进程的页面错误
perf stat -e page-faults -p <pid>
# 监控特定进程的页面错误。


# 221. 监控内存分配的详细信息
perf mem record -t malloc,free ./my_application
perf mem report
# 记录内存分配和释放的详细信息。

# 222. 监控特定事件的 CPU 性能
perf stat -e cpu-cycles,cache-misses,branch-misses ./my_application
# 监控 CPU 周期、缓存未命中和分支未命中。

# 223. 记录并分析内存访问模式
perf record -e page-faults ./my_application
perf report
# 记录页面错误事件并生成报告。

# 224. 监控系统调用的执行时间
perf trace -e syscalls:sys_enter_* ./my_application
# 监控所有系统调用的进入,分析执行时间。

# 225. 监控特定 CPU 核心的性能
perf stat -C <cpu_id> -e cycles,instructions ./my_application
# 在特定 CPU 核心上监控周期和指令。

# 226. 监控内存带宽
perf stat -e bus-cycles,cache-references ./my_application
# 监控总线周期和缓存引用。

# 227. 监控 I/O 操作的性能
perf stat -e block:block_rq_issue,block:block_rq_complete ./my_application
# 监控块设备请求的发起和完成。

# 228. 监控进程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定进程的上下文切换次数。

# 229. 监控特定内核模块的性能
perf record -e kmalloc -p <pid> ./my_kernel_module
perf report
# 记录特定内核模块中的内存分配事件。

# 230. 监控 CPU 的温度
perf stat -e cpu-temperature ./my_application
# 监控 CPU 温度变化。

# 231. 记录并分析内存使用情况
perf mem record -t load,store ./my_application
perf mem report
# 记录内存加载和存储操作的访问情况。

# 232. 监控系统调用的返回值
perf trace -e syscalls:sys_exit_* ./my_application
# 监控所有系统调用的返回情况。

# 233. 监控特定线程的性能
perf stat -p <pid> -e cpu-clock,instructions,cycles
# 监控特定线程的 CPU 时钟、指令和周期。

# 234. 监控内存访问的延迟
perf mem record -t load ./my_application
perf mem report
# 记录内存加载的延迟并生成报告。

# 235. 监控特定进程的 I/O 性能
perf stat -e block:block_rq_issue,block:block_rq_complete -p <pid>
# 监控特定进程的块设备请求。

# 236. 监控系统的 CPU 使用情况
perf stat -a -e cycles,instructions ./my_application
# 在所有 CPU 上监控应用程序的性能。

# 237. 监控特定用户空间函数的调用情况
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 238. 监控内存分配情况
perf mem record -t malloc -a ./my_application
perf mem report
# 记录所有进程的内存分配并生成报告。

# 239. 监控特定内核事件
perf record -e irq:irq_handler_exit ./my_application
perf report
# 记录 IRQ 处理程序的退出事件。

# 240. 监控进程的页面错误
perf stat -e page-faults -p <pid>
# 监控特定进程的页面错误。


# 241. 监控特定事件的性能
perf stat -e cycles,instructions,cache-misses ./my_application
# 监控特定应用程序的周期、指令和缓存未命中。

# 242. 记录并分析上下文切换
perf record -e context-switches ./my_application
perf report
# 记录上下文切换事件并生成报告。

# 243. 监控内存访问的延迟
perf record -e dcache-load-misses,dcache-store-misses ./my_application
perf report
# 记录数据缓存加载和存储未命中事件。

# 244. 监控 I/O 设备的性能
perf stat -e block:block_rq_issue,block:block_rq_complete ./my_application
# 监控块设备请求的发起和完成。

# 245. 监控特定用户空间函数的调用情况
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 246. 监控内存分配情况
perf mem record -t malloc ./my_application
perf mem report
# 记录内存分配的详细信息。

# 247. 监控特定线程的 CPU 使用情况
perf stat -p <pid> -e cpu-clock,instructions
# 监控特定线程的 CPU 时钟和指令数。

# 248. 监控进程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定进程的上下文切换次数。

# 249. 监控系统调用的延迟
perf trace -e syscalls:sys_enter_* ./my_application
# 监控所有系统调用的进入,分析执行时间。

# 250. 监控 CPU 的温度和频率
perf stat -e cpu-frequency,cpu-temperature ./my_application
# 监控 CPU 的温度和频率变化。

# 251. 监控内存使用情况
perf stat -e page-faults,minor-faults,major-faults ./my_application
# 监控页面错误和内存使用情况。

# 252. 监控特定内核事件
perf record -e irq:irq_handler_exit ./my_application
perf report
# 记录 IRQ 处理程序的退出事件。

# 253. 监控特定进程的 I/O 性能
perf stat -e block:block_rq_issue,block:block_rq_complete -p <pid>
# 监控特定进程的块设备请求。

# 254. 监控系统的 CPU 使用情况
perf stat -a -e cycles,instructions ./my_application
# 在所有 CPU 上监控应用程序的性能。

# 255. 监控内存访问模式
perf mem record -t load,store ./my_application
perf mem report
# 记录内存加载和存储操作的访问情况。

# 256. 监控特定线程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定线程的上下文切换。

# 257. 监控进程的页面错误
perf stat -e page-faults -p <pid>
# 监控特定进程的页面错误。

# 258. 监控内存带宽使用情况
perf stat -e bus-cycles,cache-references ./my_application
# 监控总线周期和缓存引用。

# 259. 监控特定事件的 CPU 性能
perf stat -e cpu-cycles,cache-misses,branch-misses ./my_application
# 监控 CPU 周期、缓存未命中和分支未命中。

# 260. 监控内存使用情况
perf stat -e page-faults,minor-faults,major-faults ./my_application
# 监控页面错误和内存使用情况。


# 261. 监控特定系统调用的性能
perf trace -e syscalls:sys_enter_open,syscalls:sys_exit_open ./my_application
# 监控打开文件的系统调用。

# 262. 记录并分析 CPU 性能
perf record -e cpu-cycles,instructions ./my_application
perf report
# 记录 CPU 周期和指令数,并生成报告。

# 263. 监控内存分配和释放
perf record -e malloc,free ./my_application
perf mem report
# 记录内存分配和释放事件。

# 264. 监控特定进程的 CPU 使用情况
perf stat -p <pid> -e cpu-clock,context-switches
# 监控特定进程的 CPU 时钟和上下文切换。

# 265. 监控内存访问的延迟
perf record -e dcache-load-misses ./my_application
perf report
# 记录数据缓存加载未命中事件。

# 266. 监控 I/O 操作的延迟
perf stat -e block:block_rq_issue,block:block_rq_complete ./my_application
# 监控块设备请求的发起和完成。

# 267. 监控特定线程的性能
perf stat -t <thread_id> -e cpu-clock,instructions
# 监控特定线程的 CPU 时钟和指令。

# 268. 监控系统的上下文切换
perf stat -e context-switches -a
# 监控所有进程的上下文切换次数。

# 269. 监控内存使用情况
perf stat -e page-faults,minor-faults,major-faults ./my_application
# 监控页面错误和内存使用情况。

# 270. 监控特定内核模块的性能
perf record -e kmalloc -p <pid> ./my_kernel_module
perf report
# 记录特定内核模块中的内存分配事件。

# 271. 监控 CPU 性能事件
perf stat -e cpu-cycles,cache-misses ./my_application
# 监控 CPU 周期和缓存未命中。

# 272. 监控进程的 I/O 性能
perf stat -e block:block_rq_issue,block:block_rq_complete -p <pid>
# 监控特定进程的块设备请求。

# 273. 监控内存访问模式
perf mem record -t load,store ./my_application
perf mem report
# 记录内存加载和存储的访问情况。

# 274. 监控系统调用的返回值
perf trace -e syscalls:sys_exit_* ./my_application
# 监控所有系统调用的返回情况。

# 275. 监控特定用户空间函数的调用情况
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 276. 监控 CPU 的温度
perf stat -e cpu-temperature ./my_application
# 监控 CPU 温度变化。

# 277. 监控特定进程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定进程的上下文切换次数。

# 278. 监控内存分配情况
perf mem record -t malloc ./my_application
perf mem report
# 记录内存分配的详细信息。

# 279. 监控系统的 CPU 使用情况
perf stat -a -e cycles,instructions ./my_application
# 在所有 CPU 上监控应用程序的性能。

# 280. 监控特定事件的性能
perf stat -e cycles,instructions,cache-misses ./my_application
# 监控特定应用程序的周期、指令和缓存未命中。


# 281. 监控系统调用的详细信息
perf trace -e syscalls:sys_enter_* -e syscalls:sys_exit_* ./my_application
# 监控所有系统调用的进入和退出。

# 282. 记录并分析内存带宽使用
perf record -e cache-references,cache-misses ./my_application
perf report
# 记录缓存引用和未命中的事件。

# 283. 监控特定进程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定进程的上下文切换次数。

# 284. 监控内存使用情况
perf stat -e page-faults,minor-faults,major-faults ./my_application
# 监控页面错误和内存使用情况。

# 285. 监控 CPU 性能事件
perf stat -e cpu-cycles,instructions,cache-misses ./my_application
# 监控 CPU 周期、指令和缓存未命中。

# 286. 监控 I/O 操作的延迟
perf stat -e block:block_rq_issue,block:block_rq_complete ./my_application
# 监控块设备请求的发起和完成。

# 287. 监控特定线程的性能
perf stat -t <thread_id> -e cpu-clock,instructions
# 监控特定线程的 CPU 时钟和指令数。

# 288. 监控内存分配和释放
perf record -e malloc,free ./my_application
perf report
# 记录内存分配和释放事件。

# 289. 监控系统的 CPU 使用情况
perf stat -a -e cycles,instructions ./my_application
# 在所有 CPU 上监控应用程序的性能。

# 290. 监控特定内核模块的性能
perf record -e kmalloc -p <pid> ./my_kernel_module
perf report
# 记录特定内核模块中的内存分配事件。

# 291. 监控内存访问的延迟
perf record -e dcache-load-misses ./my_application
perf report
# 记录数据缓存加载未命中事件。

# 292. 监控特定用户空间函数的调用情况
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 293. 监控 CPU 的温度
perf stat -e cpu-temperature ./my_application
# 监控 CPU 温度变化。

# 294. 监控内存使用情况
perf stat -e page-faults,minor-faults,major-faults ./my_application
# 监控页面错误和内存使用情况。

# 295. 监控特定事件的性能
perf stat -e cycles,instructions,cache-misses ./my_application
# 监控特定应用程序的周期、指令和缓存未命中。

# 296. 监控系统调用的返回值
perf trace -e syscalls:sys_exit_* ./my_application
# 监控所有系统调用的返回情况。

# 297. 监控特定进程的 I/O 性能
perf stat -e block:block_rq_issue,block:block_rq_complete -p <pid>
# 监控特定进程的块设备请求。

# 298. 监控内存访问模式
perf mem record -t load,store ./my_application
perf mem report
# 记录内存加载和存储的访问情况。

# 299. 监控内存带宽使用情况
perf stat -e bus-cycles,cache-references ./my_application
# 监控总线周期和缓存引用。

# 300. 监控特定线程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定线程的上下文切换次数。


# 301. 监控系统的 CPU 利用率
perf stat -a -e cpu-clock,task-clock ./my_application
# 监控系统的 CPU 利用率和任务时钟。

# 302. 监控特定进程的内存分配
perf record -e kmalloc -p <pid>
perf report
# 记录特定进程的内存分配情况。

# 303. 监控网络 I/O 性能
perf stat -e net:net_dev_queue,net:net_dev_xmit ./my_application
# 监控网络设备的发送和接收请求。

# 304. 监控系统调用的延迟
perf record -e syscalls:sys_enter_* -e syscalls:sys_exit_* ./my_application
perf script
# 记录系统调用的进入和退出时间。

# 305. 监控内存带宽使用情况
perf stat -e dcache-load-misses,dcache-loads ./my_application
# 监控数据缓存加载未命中和加载事件。

# 306. 监控 CPU 性能事件的详细信息
perf record -e cycles,instructions -g ./my_application
perf report
# 记录 CPU 周期和指令的调用图。

# 307. 监控 I/O 操作的延迟
perf stat -e block:block_rq_issue,block:block_rq_complete ./my_application
# 监控块设备请求的发起和完成。

# 308. 监控特定进程的上下文切换
perf stat -e context-switches -p <pid>
# 监控特定进程的上下文切换次数。

# 309. 监控内存使用情况
perf stat -e page-faults,minor-faults,major-faults ./my_application
# 监控页面错误和内存使用情况。

# 310. 监控 CPU 性能事件
perf stat -e cpu-cycles,instructions,cache-misses ./my_application
# 监控 CPU 周期、指令和缓存未命中。

# 311. 监控特定线程的性能
perf stat -t <thread_id> -e cpu-clock,instructions
# 监控特定线程的 CPU 时钟和指令数。

# 312. 监控内存分配和释放
perf record -e malloc,free ./my_application
perf report
# 记录内存分配和释放事件。

# 313. 监控内存访问的延迟
perf record -e dcache-load-misses ./my_application
perf report
# 记录数据缓存加载未命中事件。

# 314. 监控特定用户空间函数的调用情况
perf record -g -e my_function ./my_application
perf report
# 记录特定用户空间函数的调用情况。

# 315. 监控 CPU 的温度
perf stat -e cpu-temperature ./my_application
# 监控 CPU 温度变化。

# 316. 监控系统调用的返回值
perf trace -e syscalls:sys_exit_* ./my_application
# 监控所有系统调用的返回情况。

# 317. 监控特定事件的性能
perf stat -e cycles,instructions,cache-misses ./my_application
# 监控特定应用程序的周期、指令和缓存未命中。

# 318. 监控内存使用情况
perf stat -e page-faults,minor-faults,major-faults ./my_application
# 监控页面错误和内存使用情况。

# 319. 监控内存访问模式
perf mem record -t load,store ./my_application
perf mem report
# 记录内存加载和存储的访问情况。

# 320. 监控 CPU 性能事件
perf stat -e cpu-cycles,cache-misses ./my_application
# 监控 CPU 周期和缓存未命中。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值