内存分配如何影响电池使用?在变量中保存大量数据是否比执行基本计算的多次迭代消耗更多功率?
P.S。我正在开发一款适用于mac的科学应用程序,并希望针对电池消耗进行优化。
答案 0 :(得分:11)
您在内存中保存的数据量不会影响电池寿命,因为必须始终刷新整个内存,无论您是否存储内容(内存控制器不知道某个部件是否为“未使用的“,AFAIK”。
相比之下,计算确实需要动力。特别是如果他们可能将CPU从空闲或低功耗状态唤醒。
答案 1 :(得分:2)
我相信RAM消耗是相同的,无论它是满还是空。但是,机器中的物理RAM越多,它消耗的功率就越大。
在Mac上,您需要避免点击硬盘驱动器,因此请尽量确保不经常读取磁盘,并且绝对不要消耗太多内存,而是开始使用虚拟内存(或推送其他应用程序)进入虚拟内存)。
大多数现代mac在不忙时也会部分关闭CPU,因此降低CPU使用率实际上会降低功耗。
答案 2 :(得分:1)
另一方面,当你的应用程序使用更多内存时,它会将其他应用程序缓存数据从内存中推出,如果用户决定从一个应用程序切换到另一个,则处理可能会产生一些电池成本,但我认为这可以忽略不计。 最好在应用程序转换到后台后最小化应用程序的内存占用,以便允许更多应用程序挂起而不会终止。此外,应用程序按内存大小的降序终止,因此如果您的应用程序是后台中存在的最大应用程序,它将首先被终止。