【发布时间】:2012-01-18 07:46:51
【问题描述】:
内存分配如何影响电池使用量?将大量数据保存在变量中会比执行多次基本计算迭代消耗更多的能量吗?
附:我正在开发一款适用于 Mac 的科学应用,并希望针对电池消耗对其进行优化。
【问题讨论】:
-
通常情况正好相反。计算消耗电池。
标签: objective-c performance power-management
内存分配如何影响电池使用量?将大量数据保存在变量中会比执行多次基本计算迭代消耗更多的能量吗?
附:我正在开发一款适用于 Mac 的科学应用,并希望针对电池消耗对其进行优化。
【问题讨论】:
标签: objective-c performance power-management
另一方面,当您的应用程序使用更多内存时,它会将其他应用程序缓存数据推出内存,并且如果用户决定从一个切换到另一个,则处理可能会产生一些电池成本,但我认为这可以忽略不计. 最好在应用程序转换到后台后尽量减少应用程序的内存占用,以允许更多应用程序挂起而不被终止。此外,应用程序是按照内存大小的降序终止的,因此如果您的应用程序是后台存在的最大的应用程序,它将首先被杀死。
【讨论】:
我相信 RAM 的消耗量是相同的,无论它是满的还是空的。但是,您在机器中拥有的物理 RAM 越多,消耗的电量就越多。
在 Mac 上,您会希望避免碰到硬盘驱动器,因此请尽量确保您不经常读取磁盘,并且绝对不要消耗太多 RAM,您开始使用虚拟内存(或推送其他应用程序)到虚拟内存中)。
大多数现代 Mac 在它们不是很忙时也会部分关闭 CPU,因此减少 CPU 使用率实际上会降低功耗。
【讨论】:
您在内存中保存的数据量不会影响电池寿命,因为无论您是否在其中存储某些内容,整个内存都必须一直刷新(内存控制器不知道某个部分是否“未使用”,AFAIK)。
相比之下,计算确实需要功率。尤其是当它们可能将 CPU 从空闲或低功耗状态唤醒时。
【讨论】: