【问题标题】:iPhone 5 CPU frequency throttled when running on its batteryiPhone 5 使用电池运行时 CPU 频率受到限制
【发布时间】:2012-11-18 17:15:56
【问题描述】:

我正在开发一个 iOS 应用程序,它使用 iPhone 的 CPU 进行一些复杂的图像处理。我注意到在使用电池运行时,按下电源开关将 iPhone 5 CPU 从休眠状态唤醒后,它的速度非常缓慢。在许多情况下,这个“热身”时间可能长达 5 分钟。通常情况下,我的应用每秒可以处理超过 28 帧,CPU 负载低于 80%。但在预热阶段,它每秒只能处理 19 帧,CPU 负载超过 95%。我能想到的唯一解释是 CPU 的频率在此预热期间受到限制。但是,如果我从 XCode 运行我的应用程序,CPU 永远不会受到限制。此外,我从未在其他 iOS 设备上看到过这样的限制。不过,我还没有尝试过 iPad mini 或 iPad 4。

我想知道是否有其他人看到过相同的 CPU 行为。我可以做些什么来确保 iPhone 5 的 A6 处理器始终能够发挥这种全部功能?

【问题讨论】:

  • 是否有可能在这个“热身期”中,iPhone 正在做更多的工作,因此可供您的程序使用的计算资源更少?
  • 有可能。但是长达5分钟看起来太长了。有趣的是,如果我通过按 Home 键唤醒 iPhone 5,则不太可能发生节流。

标签: iphone ios cpu frequency throttling


【解决方案1】:

尝试以不同的方案在设备上安装您的应用,然后运行 ​​Instruments 以查看实际情况。

我在 iPhone 4 或 5 上没有遇到过这样的问题,在唤醒后会有某种节流期

【讨论】:

  • 如果我在应用程序运行时从 Mac 运行 Instruments,则不会发生限制。它仅在与 Mac 断开连接时发生。在我开始我的应用程序之前,我在 iPhone 5 上打开了 Developer logger。会话结束后,我将日志文件卸​​载到 Mac,用 Instruments 检查它,发现 CPU 负载异常高。难点在于,iPhone 的本地日志文件并没有详细说明每个进程的 CPU 使用率。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-08-02
  • 1970-01-01
  • 2019-06-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多