Skip to main content
libqcperf 是一个开源 C 库,用于在 Qualcomm 平台上进行实时硬件性能监控。它提供统一的 API,可分派到可插拔后端,每个后端面向特定的硬件子系统。数据在后台线程上异步采集,并以可配置的流传输速率通过注册的回调传递给您的应用程序。 源代码和问题跟踪器:github.com/qualcomm/libqcperf

后端

每个后端面向特定的子系统和平台。您在构建时选择要编译进来的后端。

构建

Linux ARM64(交叉编译)

1

安装前提条件

下载适用于您主机的 ARM GNU Toolchain 并设置路径:
2

使用 CMake 配置

关键标志:
3

构建

输出位于构建目录根部:libQcPerfCore.a(静态)或 libQcPerfCore.so(共享),以及 QcPerfCoreTest 可执行文件。

CMake 预设

编辑 qcperf/CMakeUserPresets.json 一次性设置 AARCH64_TOOLCHAIN_PATH 和 ProjectVersion,然后使用命名预设:
可用预设:linux-aarch64-debug、linux-aarch64-release、linux-aarch64-debug-shared、linux-aarch64-release-shared。

Windows ARM64

API 概览

所有函数都返回 QcPerfReturnCode。请包含 qcperf.h 和 qcperf_common.h。

测试应用程序

构建会生成 QcPerfCoreTest,这是一个演练完整库生命周期的单文件 C 程序。它是标准的用法示例。

运行测试应用程序

示例:

生命周期

测试应用程序演练完整的 API 序列:
1

初始化

2

连接到后端

3

发现能力

4

注册数据回调

5

对每项能力执行启动、采集、停止

6

断开连接并反初始化

回调实现

消息回调接收后端日志消息,并带严重级别前缀打印,同时抑制调试级别的输出:
数据回调在每个流传输间隔被调用。在详细模式下,它从预先复制的 QcPerfBackendInfo 中查找指标名称、单位和描述;在基本模式下,它打印指标 ID 和原始值:
数据回调在库的内部后台线程上运行。测试应用程序在开始任何监控会话之前对 QcPerfBackendInfo 进行深拷贝,以便回调可以在不持有锁的情况下安全读取指标元数据。

资源