【问题标题】:How does memory use affect battery life?内存使用如何影响电池寿命?
【发布时间】:2012-01-18 07:46:51
【问题描述】:

内存分配如何影响电池使用量?将大量数据保存在变量中会比执行多次基本计算迭代消耗更多的能量吗?

附:我正在开发一款适用于 Mac 的科学应用,并希望针对电池消耗对其进行优化。

【问题讨论】:

  • 通常情况正好相反。计算消耗电池。

标签: objective-c performance power-management


【解决方案1】:

另一方面,当您的应用程序使用更多内存时,它会将其他应用程序缓存数据推出内存,并且如果用户决定从一个切换到另一个,则处理可能会产生一些电池成本,但我认为这可以忽略不计. 最好在应用程序转换到后台后尽量减少应用程序的内存占用,以允许更多应用程序挂起而不被终止。此外,应用程序是按照内存大小的降序终止的,因此如果您的应用程序是后台存在的最大的应用程序,它将首先被杀死。

【讨论】:

    【解决方案2】:

    我相信 RAM 的消耗量是相同的,无论它是满的还是空的。但是,您在机器中拥有的物理 RAM 越多,消耗的电量就越多。

    在 Mac 上,您会希望避免碰到硬盘驱动器,因此请尽量确保您不经常读取磁盘,并且绝对不要消耗太多 RAM,您开始使用虚拟内存(或推送其他应用程序)到虚拟内存中)。

    大多数现代 Mac 在它们不是很忙时也会部分关闭 CPU,因此减少 CPU 使用率实际上会降低功耗。

    【讨论】:

    • +1,如果内存消耗迫使硬盘使用增加,它确实需要更多的功率。
    【解决方案3】:

    您在内存中保存的数据量不会影响电池寿命,因为无论您是否在其中存储某些内容,整个内存都必须一直刷新(内存控制器不知道某个部分是否“未使用”,AFAIK)。

    相比之下,计算确实需要功率。尤其是当它们可能将 CPU 从空闲或低功耗状态唤醒时。

    【讨论】:

    • “特别是如果它们可能将 CPU 从空闲或低功耗状态唤醒。”您确定吗?我相信 Mac OS X 的 CPU 在各个击键之间进入和离开它的低功耗状态,即使在快速打字时也是如此。如果有一些额外的电力税来调整消费,他们肯定不会这样做。我当然可能是错的。
    • 我的意思是,如果没有完成计算并且 CPU 能够保持在空闲/低功耗模式,它会使用更少的功率。我不知道从/到低功耗模式切换的行为是否会受到惩罚。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-04
    相关资源
    最近更新 更多