- 函数跟踪器(ftrace):调试和分析延迟及性能问题
注意 要启用 ftrace,请确认
arch/arm64/configs/qcom.config中的内核配置CONFIG_FTRACE已设置为y。如果未设置,ftrace 将无法工作。 - LTTng:同时跟踪 Linux 内核和用户空间
- Trace Compass(Eclipse):以图形方式可视化性能问题
- Qualcomm Profiler CLI:在 Qualcomm SoC 上分析并优化应用扩展性
- Perf 实用工具:评估 Linux 中的性能监控单元(PMU)计数器
- Systemd-analyze:分析和调试 Linux 系统的启动性能
函数跟踪器(ftrace)
此工具可深入洞察内核的运行情况。Function Tracer 可用于调试或分析延迟和性能问题。函数跟踪器作为一种跟踪工具,用于收集内核空间跟踪数据以供分析。 要收集 ftrace,请执行以下操作:以下步骤中指定的命令应在设备上运行。
- 要启用跟踪事件,请通过 SSH shell 在设备上运行以下命令:
- 要查看可用事件,请运行以下命令:
- 要启用所需的事件(例如调度器跟踪),请运行以下命令:
- 要了解已设置的事件,请运行以下命令:
- 要开始跟踪,请运行以下命令:
- 运行用例。
- 用例运行完成后,要停止跟踪,请运行以下命令:
- 要保存跟踪结果,请运行以下命令:
- 要将 ftrace 从目标设备拉取到主机,请使用安全复制协议(SCP)或类似工具。请确保在命令中指定目标 IP 地址。以下是在主机上运行的示例命令:
Linux Trace Toolkit next generation(LTTng)
LTTng 是一款开源跟踪工具。它用于同时跟踪 Linux 内核和用户空间。 更多信息请参见 LTTng Documentation。Eclipse 的 Trace Compass
Trace Compass 是一款开源工具,可提供用于分析性能问题的图形化视图。 它可以解析多种类型的跟踪数据(包括 ftrace 和 LTTng),并可视化以下内容:- 内核资源
- 内核控制流
- 用户空间标记
Qualcomm® Profiler CLI
Qualcomm Profiler 是一款性能分析工具,用于识别、测量和优化应用在 Qualcomm 片上系统(SoC)上的扩展性改进机会。它支持 CPU、GPU、aDSP、cDSP、用户空间进程、内存和 I/O 分析指标。 有关如何使用 Qualcomm Profiler 工具的详细信息,请参见 Qualcomm Profiler User Guide。 要在主机上下载 Qualcomm Profiler 工具,请执行以下操作:- 下载并安装 Qualcomm Software Center。
- 启动 Qualcomm Software Center,搜索 Qualcomm Profiler 并下载。
Perf 实用工具
Perf 实用工具是 Linux 中用于监控 PMU 计数器的开源分析工具。它可用于获取函数调用栈。它是 Qualcomm® Linux® 构建的一部分。 更多信息请参见 perf: Linux profiling with performance counters。 要运行 perf 实用工具,请在设备上运行以下命令:systemd-analyze
Systemd-analyze 是一款用于分析和调试 Linux 系统启动性能的命令行工具。它测量启动时间里程碑,并分析不同层(如内核、用户空间平台和服务)的瓶颈。Yocto 系统 recipe 默认包含 systemd-analyze 工具。 更多信息请参见 systemd-analyze — Analyze and debug system manager。systemd-analyze 二进制文件默认包含在 Qualcomm® Linux® 构建中。

