
以下文章经许可转载自The Conversation,这是一个报道最新研究的在线出版物。
又一款苹果 iPhone 系列,又一次媒体狂潮。关于售价 999 美元/999 英镑的 iPhone X,关于 Home 键的消失,关于“面容 ID”功能,关于无线充电等等,已经有很多文章报道。在改进列表中的某个位置,至少对于 iPhone X 来说,电池续航能力有所提升,这要归功于其新的增强型 A11 仿生处理器。
关于支持科学新闻
如果您喜欢这篇文章,请考虑通过 订阅来支持我们屡获殊荣的新闻报道。通过购买订阅,您正在帮助确保关于塑造我们当今世界的发现和想法的具有影响力的故事的未来。
苹果公司表示,这款新设备充电后的使用时间将比 iPhone 7 多出两个小时,表明例如,可以进行 14 小时的互联网使用。另一方面,iPhone 8 的电池续航能力似乎与其前代产品相当。无线充电,苹果公司在这方面姗姗来迟,并不会改变设备可以存储的电量。
正如您所期望的那样,电池的改进通常是智能手机发布的一个关键部分,因为这是消费者评判新设备的主要规格之一。三星上个月发布 Galaxy Note 8 时,在这方面有很多话要说,但更多的是关于确保不再重蹈Note 7 的缺陷,这些缺陷导致 Note 7 容易着火,而不是关于延长电池寿命。
然而,在移动计算革命的几十年里,即使是最好的产品,在单次充电后可以运行的时间仍然相对有限。例如,最初的 iPhone 可以进行 8 小时的互联网浏览,因此苹果设备在十年内仅取得了适度的进步。
到目前为止,制造商倾向于专注于改进电池技术,将越来越多的能量塞入越来越小的空间中。那些着火的 Galaxy Note 7 是一个警示故事,说明当这种能量以热量的形式释放时会发生什么问题。
制造商还致力于改进其他消耗能量的移动硬件,包括显示屏、WiFi、GPS 和中央处理单元 (CPU)。例如,新款 iPhone 改进的 CPU 和 OLED 屏幕使其更加省电。
但是,有一个领域受到的关注却出奇地少,那就是软件消耗的能量,或者更确切地说,是 CPU 在运行特定软件时消耗的能量。三星和苹果公司似乎都没有在最新的发布会上对此发表任何言论,但这个新兴领域可能会对我们未来需要给设备充电的频率产生重大影响。
软件消耗
几十年前,当计算机速度慢数千倍时,开发人员会对手动调整代码进行近乎完美的优化,以榨取每一丝性能。但是,随着软件变得越来越复杂,这要归功于新功能、改进的用户体验等等,这种情况不再可能发生。
现在的软件开发与 CPU 处理的原始二进制机器代码相去甚远。开发人员还依赖现有的代码库,因为每次都从头构建每个指令会花费太长时间。这两种改变都减少了重复的工作,并大大加快了开发时间。但是,最终的代码通常包含在特定应用程序中是多余的部分,或者可以通过更高效的定制片段进行改进。
开发人员通常会尝试通过使其代码尽可能快地运行来减轻这些缺点,理论上这会减少能量消耗。然而,这在实践中并不总是有效,因为某些指令比其他指令更耗电,并且最终会抵消这些好处。
最终的结果是,软件的能量消耗在过去几年中大幅增加。直到过去十年左右,才有人在意这个问题,因为大多数软件都是在由电源供电的机器上运行的。随着移动设备的兴起,这种情况发生了变化,而人们对电力消耗与气候变化之间联系的日益关注,也增加了额外的紧迫性。
人工智能 (AI) 的作用
开发人员迟迟未能解决这个问题还有另一个原因,那就是衡量每段软件的能量消耗非常困难。这是因为每个设备的配置都不同。能量使用会根据程序是否之前运行过,或者是否正在运行其他程序而发生变化。
然而,最近出现了一些进展。这些进展包括使用机器学习来估计能量使用,方法是分析特定的代码行或软件组件,并参考来自许多其他设备上运行的其他程序的能量数据。如果做得好,您可以让计算机完成困难的部分:搜索可以使软件更高效的替代软件设计。
欢迎来到基于搜索的软件工程。它可以像查找可以跳过的冗余代码或微调配置一样简单,也可以扩展到更改现有源代码。我们自己的工作研究了从现有库中选择替代软件组件,以及从头开始生成新代码部分。我们甚至成功地在发现并修复了Hadoop(一个非常广泛使用的软件框架)中的数百个错误。
我们的愿景是,这些用于提高能源效率的基于搜索的方法将被纳入所谓的“编译器”阶段,在该阶段,人类可读的计算机代码被转换为机器可以理解的 0 和 1。这些搜索将自动发生,开发人员无需考虑它们,他们的代码将开箱即用。
应该说,这还有很长的路要走。主要困难在于正确估计软件的能量消耗,尤其是对于许多不同的设备同时进行估计时。但是未来五年内的潜力看起来令人兴奋。我们能够证明,对于几个特定任务,CPU 的能量使用减少了 40% 到 70%,并且不可思议的是,这可以在所有正在运行的软件中复制。
结合更好的电池和对硬件性能的更多改进,例如零能耗屏幕,我们可能会谈论到电池续航方面的重大提升。未来,领先的制造商可能不再谈论电池续航能力的逐步改进,而是可以增加数小时甚至数天的续航时间。
本文最初发表于The Conversation。阅读原文。