- 函数跟踪器(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 系统配方默认包含 systemd-analyze 工具。 有关更多信息,请参阅 systemd-analyze — Analyze and debug system manager。systemd-analyze 二进制文件默认包含在 Qualcomm® Linux® 构建中。

