Skip to main content
您可以在 Qualcomm® Linux® 参考设备上访问引导时间、系统基准测试、内存映射和产品细分关键性能指标(KPI)的性能仪表板。以下小节介绍了 QCS6490、QCS5430、Qualcomm Dragonwing™ IQ-615、Qualcomm Dragonwing™ IQ-9075 和 Qualcomm Dragonwing™ IQ-8275 的性能仪表板和测量方法。

引导时间

以下引导时间 KPI 指示系统在不同阶段的就绪状态:
  • Init/systemd process:从上电到系统第一个用户空间进程(PID 1,通常是 systemd)开始执行所经过的时间。这包括固件、引导加载程序和内核+InitramFS 所花费的时间。
  • Camera driver init finish:表示摄像头硬件已完成初始化并可以使用。
  • Sysinit.target:从上电到达到 sysinit.target 的时间 — 即所有基本系统初始化服务(文件系统已挂载、内核模块已加载、基本硬件已配置)完成的时间点。
下表列出了在 QCS6490(刷写 UEFI 固件)上测得的引导时间(单位为秒)。
引导时间得分越低越好。
配置 1(qcom-multimedia-image) 配置 1 代表上游软件包集,包括作为标准 Qualcomm 多媒体镜像一部分提供的开源和基线多媒体组件。配置 2(qcom-multimedia-proprietary-image) 配置 2 代表下游软件包集,包括在上游镜像基础上叠加的专有多媒体组件、增强功能和供应商特定的附加内容。有关测量方法的信息,请参阅测量引导时间。

系统基准测试

本节概述了如何使用一组标准基准测试来测量系统性能。下表列出了 QCS6490 上的 CPU、内存、存储和图形基准测试得分。GeekbenchCoreMarkTiotestGLmark2Sysbench有关测量方法的信息,请参阅测量系统基准测试。
系统基准测试得分越高越好,但 CPU 总时间、线程总时间和互斥锁总时间除外,这些值越低越好。

内存映射

下表列出了每个分区(例如非 Linux、内核静态和应用程序)的内存消耗(单位为 MB)。它还列出了设备引导后以及在诸如 4k 分辨率 30 fps 编码等用例期间系统可用的总空闲内存。有关测量方法的信息,请参阅测量内存映射。
总空闲内存值越高,系统性能越好。

用例 KPI

下表列出了各种 QCS6490 摄像头用例的摄像头延迟测量数据(单位为秒):
摄像头延迟值越低越好。
有关测量方法的信息,请参阅测量摄像头录制和快照延迟。

测量方法

测量方法包括 KPI,例如引导时间、系统基准测试、录制延迟和快照延迟。

测量引导时间

要测量引导时间,请执行以下操作:
  1. 刷写构建版本。请参阅刷写软件镜像以引导设备。
  2. 设备启动后,重启设备。
  3. 使用串行电缆连接到设备控制台。 a. 在设备与 Linux 主机 PC 之间连接串行电缆。 b. 使用凭据(用户:root,密码:oelinux123)连接到 UART 终端。请参阅连接到 UART shell。 c. 关闭并重新开启设备电源。
在设备引导并稳定后,可通过捕获 systemd-analyze 和 journalctl 日志来测量引导时间 KPI。
预期输出:
预期输出:
预期输出:
固件和引导加载程序时间取自 systemd-analyze 输出(1.697s + 0.402s)。journalctl 中的内核时间戳相对于内核启动,因此需要加上固件 + 引导加载程序时间才能得到从上电开始的绝对引导时间。

测量系统基准测试

这些基准测试测量各子系统的性能,例如 CPU 吞吐量、内存带宽、内存延迟和 I/O 性能。 前提条件 在运行任何基准测试之前,请完成以下设置:
设备上默认未启用 ADB。要在运行这些基准测试之前启用 ADB,请参阅启用 ADB。
  1. 刷写构建版本。
  2. 运行以下命令获取 root 访问权限:
  3. 在设备上打开 shell:
  4. 导航到推送二进制文件的目录:
  5. 为二进制文件设置执行权限:
Geekbench Geekbench 是一款用于根据既定基准测量系统性能的工具。 要使用 Geekbench 测量系统性能,请执行以下操作:
  1. 要从上游的 Linux/ARM 部分下载 Geekbench,请参阅 Geekbench。
适用于 Linux/AArch64 的 Geekbench 6 是预览版。Geekbench 版本可能会更改,本节中提到的步骤仅供参考。预览版需要有效的互联网连接,并会自动将基准测试结果上传到 Geekbench 浏览器。
  1. 要使用 Geekbench 测量 CPU 基准,请执行以下操作:
    1. 解压 Geekbench 文件并使用 adb 工具从主机推送。以下是示例命令:
    2. 要运行 Geekbench,请在设备上运行以下命令:
Sysbench Sysbench 测量 CPU、内存、线程、互斥锁和文件 I/O 性能。 要运行 Sysbench 测试,请在设备上运行以下命令:
要使用 taskset 运行:
Tiotest Tiotest 测量存储 I/O 性能。 要运行 Tiotest,请执行以下操作:
  1. 运行顺序 I/O 测试:
  2. 运行随机 I/O 测试:
  3. 在迭代之间清除缓存:
CoreMark CoreMark 测量嵌入式处理器性能。 要运行 CoreMark,请在设备上运行以下命令:
以下是示例输出:
Glmark2 Glmark2 测量 GPU 渲染和图形性能。 要运行 Glmark2,请执行以下操作:
  1. 配置 Wayland 运行时环境:
  1. 以默认分辨率运行离屏测试:
  1. 以 1920x1080 分辨率运行离屏测试:
  1. 以默认分辨率运行屏上测试:
  1. 以 1920x1080 分辨率运行屏上测试:

测量内存映射

内存映射提供有关如何为不同进程分配内存的信息。通过内存映射测量,您可以监控映射的进程并排查任何内存问题。 要计算内存映射,请引导设备并使其稳定。然后,运行以下命令从设备收集日志:
非 Linux 内存 使用以下公式计算非 Linux 内存: 非 Linux = 总 RAM 大小 − Linux 总量 运行以下命令计算总 RAM 大小:
要从 iomem 计算 Linux 内存总量,请运行以下命令:
内核静态 使用以下公式计算内核静态内存: 内核静态 = Linux 总量 − MemTotal 应用程序 + 框架内存计算 使用以下公式计算应用程序和框架使用的内存: 应用程序 + 框架 = MemTotal − 空闲内存 空闲内存计算 使用以下公式计算空闲内存: 空闲内存 = MemFree + (Cached − shmem) + buffer + ION 缓存 要获取空闲内存详细信息,请运行以下命令:
要检查 ION 缓存的 vmstat 日志,请运行以下命令:

测量摄像头录制和快照延迟

本主题介绍摄像头录制和快照延迟的测量方法。 要在每次重启时完成前提条件,请在设备上运行以下命令:
首次录制延迟 要捕获日志,请按照以下步骤操作:
  1. 引导设备并等待其稳定。
  2. 在一个 shell 中,运行以下命令:
  3. 在另一个 shell 中,运行用例。
  4. 停止跟踪日志。
  5. 参阅下方参考表以测量录制延迟。
首次快照延迟
  1. 引导设备。
  2. 设备稳定后,在一个 shell 中运行以下命令:
  3. 在另一个 shell 中,运行用例。
  4. 停止跟踪日志。
  5. 参阅下方参考表以测量快照延迟。
测量参考表