gpt4 book ai didi

android - 如何在 Android/Galaxy SIII 上获取每个核心 CPU 使用率

转载 作者:搜寻专家 更新时间:2023-11-01 08:03:47 27 4
gpt4 key购买 nike

我有一台 Android 4.1.2 已“root”的三星 Galaxy SIII。我需要测量一些我用 C/C++ 编写的多线程应用程序的 CPU 使用率,但是我需要以每个内核为基础的此信息。

我知道(根据维基百科,...)Galaxy 有一个带有 4 个 ARM Cortex A9 的 SoC,但是当我执行 cat/proc/cpuinfo 时,它没有显示任何关于可用内核的数量(在任何 Linux 中都是如此),这是正确的行为吗?

我在某处读到我可以使用 cat/proc/stat 来查看每个内核的平均负载但是,在我的设备中,此类"file"的内容仅显示“core0”,再一次,这是正确的还是我需要做些什么来启用所有内核?

我也试过 topps 但没有成功。

EDITED:
----------------- cat /proc/cpuinfo
Processor : ARMv7 Processor rev 0 (v7l)
processor : 0
BogoMIPS : 1592.52

Features : swp half thumb fastmult vfp edsp neon vfpv3 tls
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x3
CPU part : 0xc09
CPU revision : 0

Chip revision : 0011
Hardware : SMDK4x12
Revision : 000c
Serial : 11e16f694df1267e


----------------- cat /proc/stat

cpu 89515 1686 23283 464122 3835 2 376 0 0 0
cpu0 74214 457 16736 221609 1111 1 347 0 0 0
intr 1860068 0 0 0 0 0 0 0 0 0 0 .... (removed: a serie of numbers)
ctxt 3138146
btime 1371578546
processes 15904
procs_running 1
procs_blocked 0
softirq 1154788 12 403499 864 4501 12 12 444746 67202 576 233364

最佳答案

您可以通过检查热插拔设备/sys/devices/system/cpu/present/sys/devices/system/cpu/possible。另见 the hotplug docs .

我不确定这对获得 CPU 使用率有多大帮助。您可以从 adb shell ps -x -t 粗略地了解线程使用了多少用户和系统时间,例如:

USER     PID   PPID  VSIZE  RSS     WCHAN    PC         NAME
system 19598 19574 955672 57324 ffffffff 4012d9b8 S system_server (u:2186, s:1521)
system 19602 19598 955672 57324 c007f840 4012db84 S GC (u:79, s:6)

这表示 system_server 的主线程使用了 2186 个用户时间滴答,而 GC 线程使用了 79 个滴答。

如果您可以检测您的应用程序,则可以使用带有 CLOCK_THREAD_CPUTIME_ID 的 POSIX clock_gettime() 调用来测量给定线程使用的 CPU 时间量。 (Dalvik VM 在为 traceview 生成结果时使用它。)

然而,这都是基于线程的。获取每个内核的使用信息要困难得多,尤其是在 Android 上:

  • 热插拔机制可以在您的测试期间添加或删除内核。
  • 内核可以单独调整每个内核的 CPU 频率,因此在不同的内核上执行 X 量的工作可能需要不同的时间。
  • 线程可以在核心之间迁移(默认情况下没有核心关联)。

关于android - 如何在 Android/Galaxy SIII 上获取每个核心 CPU 使用率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17177720/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com