掌上设备正变得无处不在,并且随着其功能的增强,它们开始取代笔记本电脑——就像笔记本电脑在许多方面取代了台式电脑一样。掌上设备正在从今天的 PDA、管理器、手机和游戏机演变成各种新的形式。尽管低功耗电子技术的进步部分抵消了这种趋势,但功能的增加也带来了能源消耗的相应增加。其次,由于取代了其他设备,掌上设备在电池充电之间被更多地使用。最后,电池技术的改进速度跟不上掌上电子设备能源需求的增长速度。因此,能源管理曾经是期望的功能领域,现在已成为重要的设计要求,也是便携式计算领域最大的挑战之一,并且在很长一段时间内都将如此。
在当今的可充电电池中,锂离子电池提供最高的容量。索尼在 1991 年将其商业化,近年来其容量每年提高约 10% [1]。然而,这种增长率正在趋于平缓,即使采用替代材料和新型电池结构,可充电电池在未来也不太可能取得重大改进。
这就是为什么电池供应商和移动系统设计师期望燃料电池电源的最终出现,并为此进行投资。燃料电池最基本的形式是将氢燃料与周围空气中的氧气结合,产生水和电。但氢气易燃且密度低,这使得它对大多数移动应用没有吸引力。相反,大多数努力都集中在使用甲醇作为燃料,并通过催化剂或高温重整提取氢气 [2]。
虽然基于甲醇的燃料电池有望比化学可充电电池提供高出一个数量级的能量密度,但仍然存在严重的发展问题。尽管如此,几家制造商——Intermec Technologies 和 MTI MicroFuel Cells(合作)、NEC 和 Casio——已承诺在 2004 年至 2005 年推出初步产品。其中一些早期燃料电池将用于掌上系统,但大多数将用于笔记本电脑,燃料电池的硬件复杂性可以在更大的系统中分摊。便携式电子产品中燃料电池的广泛采用预计要到本十年末。经验表明,用户的期望会随着系统功能的提升而发展。即使采用燃料电池,也可能不足以满足移动用户对能源的渴望或降低能源管理的重要性。
虽然在日常对话中,功率和能量这两个词经常互换使用,但理解这两个概念之间的区别非常重要。设备使用的功率是单位时间消耗的能量。相反,能量是功率对时间的积分。由于电池存储了给定的能量,因此能源管理(不幸的是,通常被称为电源管理)的目标是最大限度地减少令人满意地执行每项任务所需的能量。
在某些情况下,最小化功率也会最小化能量,但正如将要展示的那样,情况并非总是如此。有些任务以高速和高功率在短时间内完成,比以低速和低功率在较长时间内完成,所需的能量更少。
然而,固定持续时间的任务——例如播放音频或视频——构成了一个重要的类别,其中所需的能量与消耗的平均功率直接成正比(因为任务的持续时间根据定义是恒定的)。此类还包括等待,无论是设备开启时等待用户输入,还是设备关闭时将数据保存在内存中并保持时钟滴答作响。对于此类任务,专注于最小化功率将最小化能量。
为了实现有用的能源管理,重要的是要了解掌上设备中的能量是如何以及在何处使用的。不幸的是,可用的公开数据很少。我们前 Compaq 实验室在加利福尼亚州帕洛奥图的团队开发的 Itsy [4] 原型袖珍计算机的功耗研究 [3] 已发布。在这项研究中,Itsy 的功耗被分解为各个组件,用于从空闲到解码和播放 MPEG 视频的各种工作负载。
图 1 显示了几个组件或组件组(通常在睡眠模式下达到)的最小功耗,以及本研究中使用的所有非睡眠模式基准测试的低功耗和高功耗数据。这些功耗范围代表了实际功耗,因为基准测试范围从空闲模式到压力大多数组件的极限的应用。
在大多数方面,Itsy 与其基于英特尔 StrongARM 处理器的当代商用掌上设备相似。因此,其功耗也应代表这些设备。然而,Itsy 在一个方面与商业同类产品有很大不同:显示器。Itsy 使用被动矩阵灰度液晶显示器 (LCD),经过优化,在大多数照明条件下无需背光即可使用(仅在非常昏暗的照明下才需要背光)。
另一方面,许多商用掌上设备使用有源矩阵彩色 LCD。虽然这些显示器通常是反射式或半反射式,并且可以仅在环境光下使用,但人们发现大多数用户都会打开背光或前光,至少调到低亮度,以获得更高的对比度和更明亮、更饱和的色彩。为了解释这种差异,图 1 还显示了康柏 iPAQ h36xx 的显示器和前光的功耗,该设备在其他方面与 Itsy 相似。
另一个显着差异是 Itsy 没有任何内置无线功能,而今天许多掌上设备用户都想要无线通信,无论是作为附件还是对于最新的掌上设备,都内置在系统中。图 1 还显示了流行的无线 (IEEE 802.11b) PC 卡 [5] 的功耗,该卡可以用作 iPAQ H36xx 等掌上设备的附件。
最后,虽然最好提供具有更现代处理器的更新设备的数据,但尚未发布类似的全面数据。尽管基于更新的技术,但这些设备的架构与 Itsy 的架构足够相似,以至于功耗分解在质量上不应有太大差异。
图 1 最显着的特征是所有组件的最小功率值都比最大功率值小至少一个数量级。这表明,在子单元未使用时将其关闭的明显技术实际上可能非常有效。虽然概念上很简单,但此方案需要仔细分析 OS(操作系统)。正如我们对 Itsy 的经验表明的那样,实现最佳节能需要结构良好的软件和大量细致的工作。
为了实现此目标,系统硬件应设计为可以独立运行并可以独立供电和关闭的互连构建块的集合。当前的掌上设备仅部分满足此要求。外围构建块(通信端口、音频输入和输出、显示器等)通常可以在不使用时禁用或关闭。但是,通常无法关闭中央构建块,例如处理器或内存,除非将整个系统置于睡眠模式。
随着将越来越多的功能放入处理器的趋势,新的处理器架构必须从电源的角度保持内部构建块的独立性。如果集成电路制造商能够指定子单元的电源行为,那也将很有用。今天的规范通常仅提供有关如何启用或禁用子单元或如何更改其参数(速度等)的信息,但没有提供有关此类操作将如何影响功耗的信息。如果没有此类数据,软件开发人员必须求助于猜测或执行自己的测量。
Itsy 功耗研究的有趣发现之一是,具有不同功率特性的不同子单元之间的相互作用有时会导致令人惊讶和违反直觉的行为 [3]。这表明实时功耗测量硬件可能使软件能够做出更好的能源使用决策。
电源状态。 如图 1 所示,处理器可能要对系统功耗的很大一部分负责。当今掌上设备中的处理器提供了通过降低可用性能来降低功耗的机制。通常有三种主要的电源状态:运行、空闲和睡眠。每个主要状态本身可以包含一个或多个次要状态。例如,运行状态可能有多个频率可供选择。同样,睡眠状态也可能有多个级别,每个级别都关闭了一组不同的组件。
图 2 显示了 Itsy 上使用的 StrongARM SA-1100 处理器上可用的主要电源状态。主要运行状态有 20 个次要状态,每个次要状态有两个核心频率,用于处理器其余部分使用的 10 个支持频率中的每一个。空闲状态有 10 个次要状态,每个支持频率一个。运行状态与空闲或睡眠状态之间的转换由软件控制。从空闲状态到运行状态的转换由中断触发。从睡眠状态到运行状态的转换是由于实时时钟 (RTC) 警报或外部中断而发生的。
在查看使用给定处理器状态的能量影响时,需要考虑三个因素
从软件的角度来看,由于进入和退出延迟小,因此空闲状态被认为是轻量级状态,而睡眠状态具有更大的延迟,被认为是重量级状态。表 1 显示了 Itsy 的 StrongARM SA-1100 的每个状态的性能、延迟和功耗。
在查看表 1 时,请注意睡眠状态有两个次要状态,具体取决于是否启用主时钟。关闭它可以节省电量,但会将退出睡眠状态的延迟从 10 毫秒增加到 157 毫秒 (ms)。另一个重要问题是,这些延迟仅是硬件延迟;在睡眠状态的情况下,您应该考虑保存和恢复操作系统状态有时会导致的显着延迟。
表 1 |
|||
状态 |
性能 | 硬件延迟 | 电功率 |
睡眠 | 检测到中断并可以唤醒处理器。 |
进入睡眠:150 微秒退出睡眠:10–157 毫秒 | 7.18 毫瓦 |
空闲 | 不执行任何指令;中断使处理器进入运行状态。 | 进入空闲:< 10 个周期 退出空闲:< 10 个周期 |
59 MHz 时为 55.5 毫瓦 133 MHz 时为 81.9 毫瓦 192 MHz 时为 95.5 毫瓦 |
运行 |
性能是处理器频率的函数。 | 不适用 | 取决于工作负载。 |
频率和电压缩放。 动态频率缩放 (DFS) 是一种旨在通过根据正在执行的应用程序的要求更改处理器频率来降低功耗的技术。对于固定持续时间的任务,尤其是等待,这通常会导致能量使用量成比例地减少。对于其他任务,由于执行时间的相应增加,DFS 可能会节省或浪费能量,具体取决于二阶效应。为了保证节能,处理器电压必须与频率同时更改。此技术称为动态电压频率缩放 (DVFS) 或动态电压缩放 (DVS)。
DVFS 的重要性来自于处理器消耗的功率与频率和电压的平方成正比
P µ f · v
作为第一近似,给定的任务(没有等待)占用固定数量的处理器周期,因此每个任务使用的能量与电压的平方成正比。
较旧的处理器不支持电压缩放(尽管 StrongARM 处理器仅指定允许频率缩放,但包括 Itsy 在内的几个实验系统使用它来实现 DVFS)。较新的处理器(如英特尔的 XScale)指定在几个不同的电压点运行,具有不同的最大频率。
DVFS 和 DFS 算法力求在不影响用户对系统响应时间感知的情况下更改频率。频率更改通常以固定的速率发生——例如,每 10 毫秒——并且基于对下一个决策点之前的处理需求(工作负载)的预测。尽管已经提出了许多算法 [6,7],但 DVFS(甚至 DFS)很少在通用商用掌上系统中实现。
相反,支持频率缩放的掌上设备采用了更静态的方法,仅在发生重大事件(例如用户请求或电池电量不足)时才更改处理器频率。商用掌上系统中缺少 DVFS/DFS 的原因有很多,包括正确实施 DVFS/DFS 的复杂性增加以及系统响应时间可能增加。
许多当前处理器中与频率变化相关的副作用。这些处理器高度集成,并包含许多 I/O 组件,例如 LCD 控制器和串行端口,这些组件在频率变化期间或之后可能会出现故障。为了消除此问题,某些处理器(例如 XScale 处理器)可以编程为具有两个核心频率,其中一个频率是另一个频率的倍数,并且处理器可以在两者之间切换而不会影响 I/O 组件。
内存。 Itsy 功耗研究 [3] 的一个有趣发现是,与访问动态随机存取存储器 (DRAM) 的成本相比,刷新动态随机存取存储器 (DRAM) 的能量成本很小。因此,增加内存大小不会导致重要的能量损失。然而,在睡眠模式下情况并非如此,在睡眠模式下,有选择地关闭部分内存电源将是有益的。尽管操作系统传统上没有为此目的实现任何机制,但您可以压缩内存内容或以其他方式释放内存(例如,要求某些应用程序保存其状态并退出)以利用此类功能。
任何减少内存访问次数的技术也将是有益的。传统上,缓存已用于此目的。然而,缓存本身也是内存阵列,访问缓存的能量成本将随着其大小的增加而增加。未来,掌上处理器的缓存大小可能会进行优化,以降低能耗而不是访问时间。
显示器。 如图 1 所示,显示器背光或前光很容易占据显示器本身使用的相当大的功率。即使在四分之一亮度下,iPAQ H36xx 的前光也是主要的功耗设备。
一些灯光功率变成了构成图像的光子;因此,在低照明条件下,一些功率使用是不可避免的。然而,在良好的环境照明下,如果 LCD 具有更好的反射特性,则可以完全避免使用背光或前光。
虽然冷阴极荧光灯 (CCFL) 通常用于照亮掌上产品中的彩色 LCD,但发光二极管 (LED) 正在获得立足点。虽然今天的白色 LED 的效率不到 CCFL 的一半,但它们正在迅速改进并降低价格 [8],并且它们正在被用于 LED 的较低效率被简化的导光光学器件和消除 CCFL 高压电源转换器所抵消的情况。
独立于显示器硬件改进,其他节能技术也可能有用。例如,典型的背光或前光均匀地照亮 LCD。然而,灯光的全部亮度仅对浅色像素有效利用。对于深色像素,光线大部分被吸收,相应的功率被浪费。Naehyuck Chang 及其团队提出在显示深色图片时,通过增加亮度和对比度来补偿,同时调暗背光或前光 [9]。他们还提出了软件技术来降低 LCD 驱动器的功耗。
有机发光二极管 (OLED) 显示器是近期有前景的新技术。然而,由于这些显示器是发射型的,因此它们无法利用环境光。对于 OLED 显示器,可以采用更主动的能源管理形式:Subu Iyer 及其同事建议将屏幕上未被应用程序积极使用的部分变暗 [10]。虽然这项技术已证明在笔记本电脑上有效,但同一作者的最新工作表明,在掌上设备上也可以实现大量节能。用户还可以选择窗口配色方案来减少浅色像素的数量(例如,深色背景上的浅色文本)。
最后,通过更改某些掌上设备的使用模型可以进一步降低能耗。取景器或头戴式显示器使用微小的显示元件来产生大的虚拟图像 [11],并且功耗明显低于直视掌上显示器。
音频系统。 虽然麦克风输入使用的功率很小,但音频输出——尤其是使用扬声器——可能会消耗相当大的功率。近年来,高效开关(D 类)放大器已在便携式电子产品上取代了传统的线性放大器,但发烧友应用除外。剩余的功率主要用于产生声音,如果扬声器仍然是首选的音频输出接口,则几乎无能为力。然而,与显示器一样,通过更改使用模型(在这种情况下是使用耳机)可以节省能源。
无线网络。 无线网络正成为掌上设备中的一项重要功能。最流行的短距离无线技术是蓝牙 (BT) 和 IEEE 802.11b(或 WiFi)。低功耗 BT 是一种短距离技术,典型范围为 10 米,带宽小于 1 兆比特每秒 (Mbps)。其主要优点之一是功耗低,传输和接收功率约为 100 至 200 毫瓦 (mW),空闲模式功率为 10 至 20 毫瓦,在零星使用期间甚至可以使用更低的功率模式(例如,嗅探、保持或停放)。
IEEE 802.11b 具有更远的范围,通常约为 100 米,以及更高的带宽 (11 Mbps),但代价是更高的功耗。例如,IEEE 802.11b 无线 PC 卡在睡眠(休眠)模式下测得约为 60 毫瓦,在空闲模式下为 805 毫瓦,在接收时为 950 毫瓦,在传输时为 1,400 毫瓦 [5]。
当今最常见的广域无线网络技术是通用分组无线业务 (GPRS)。GPRS 使用移动电话网络发送和接收信息,理论最大速度约为 170 Mbps。典型速度要低得多,在 10 到 50 千比特每秒 (Kbps) 范围内。随着 GSM 演进增强数据速率 (EDGE) 和通用移动电话系统 (3GSM) 的引入,预计未来速度会更快。
降低无线子系统中的能耗是通过尽可能长时间地处于低功耗状态来实现的。然而,与处理器状态切换一样,重要的是要考虑到进出这些较低功耗状态的转换的能量成本。
当前的操作系统通常实现三种电源状态,它们与前面描述的 Linux 的运行、空闲和睡眠状态基本等效。它们的名称通常不同:Windows CE 3.0 将它们称为 on、idle 和 suspend;Symbian 将它们称为 run、idle 和 standby;Palm OS 将它们称为 run、doze 和 sleep。
大多数操作系统使用以最低可能优先级运行的空闲线程或进程,只要没有有用的工作要做,就会进入该线程或进程。空闲线程的功能是将处理器置于空闲状态。操作系统通过用户操作(例如按下按钮)或通过不活动计时器进入睡眠状态。在操作系统可以将处理器置于睡眠状态之前,它必须首先保存操作系统状态的某些部分,例如某些处理器控制寄存器的值。当操作系统恢复时,无论是通过用户操作还是通过 RTC 警报(例如,约会警报),操作系统都必须恢复已保存的处理器寄存器。
操作系统还支持在不使用单个组件时将其关闭。例如,当没有应用程序使用音频子系统时,可以将其关闭。
Linux 通常用于原型设计,这要归功于其开源模型,该模型允许任何人实现和探索新颖的能源管理方法。
随着人们越来越依赖掌上设备,良好的能源管理对于最大限度地利用电池电量变得越来越必要。学术界和工业界的研究人员已经提出并测试了大量想法,但相对较少的想法已进入商业产品。该领域仍处于起步阶段,有趣的创意不断涌现。
可悲的是,一直缺乏功率/能量研究,而这些研究对于了解能量的实际使用方式是必要的。可用的数据非常少,并且迫切需要发布更多的研究。另一个要求是更好的工具来跟踪能量的使用 [12],特别是评估实时功耗的能力。
硬件工程师传统上掌握着功率测量技术,而能源管理通常是软件开发人员的责任,这之间也存在差距。硬件工程师需要提供软件开发人员可以轻松使用的能量跟踪工具。与此同时,软件工程师需要更好地了解硬件如何使用能量。
在许多方面,能源管理领域与几十年前的性能评估处于同一阶段,当时在了解“周期在哪里被使用”的硬件工程师和编写编译器和应用程序的软件工程师之间存在类似的鸿沟。也许在几年之内,“能源管理工程师”将像今天的性能工程师一样多,并将帮助弥合这一仍然巨大的差距。
1. Linden, D. 和 Reddy, T. 二次电池——导言。在电池手册,编辑:D. Linden 和 T. Reddy,第 22.3–22.24 页。纽约,纽约:McGraw-Hill,第 3 版,2002 年; http://www.knovel.com/knovel/databook/pdf/627/59788_22.pdf。
2. Riezenman, M. Mighty mites. IEEE Spectrum 40, 6(2003 年 6 月),30–33; http://www.spectrum.ieee.org/spectrum/jun03/features/mm.html(需要订阅)。
3. Viredaz, M. 和 Wallach, D. 掌上电脑的功率评估。IEEE Micro 23, 1(2003 年 1 月至 2 月),66–74; http://dlib.computer.org/mi/books/mi2003/pdf/m1066.pdf(需要订阅)。
4. Hamburgen, W.、Wallach, D.、Viredaz, M.、Brakmo, L.、Waldspurger, C.、Bartlett, J.、Mann, T. 和 Farkas, K. Itsy:扩展移动计算的界限。Computer 34,4,(2001 年 4 月),28–36,IEEE 计算机协会; http://dlib.computer.org/co/books/co2001/pdf/r4028.pdf(需要订阅)。
5. Shih, E.、Bahl, P. 和 Sinclair, M. Wake on Wireless:电池供电设备的事件驱动节能策略。在第八届移动计算和网络年度国际会议论文集,第 160–171 页。亚特兰大,佐治亚州: Press,2002 年 9 月; http://portal.acm.org/ft_gateway.cfm?id=570666&type=pdf(需要帐户和密码)。
6. Weiser, M.、Welch, B.、Demers, A. 和 Shenker, S. 用于降低 CPU 能量的调度。在第一届操作系统设计和实现研讨会论文集,第 13–23 页。蒙特雷,加利福尼亚州:Usenix,1994 年 11 月; http://www.ubiq.com/hypertext/weiser/ReducedEnergyScheduling.ps。
7. Govil, K.、Chan, E. 和 Wasserman, H. 比较低功耗 CPU 动态速度设置的算法。在第一届移动计算和网络国际会议论文集,第 13-25 页。伯克利,加利福尼亚州: Press,1995 年 11 月; http://portal.acm.org/ft_gateway.cfm?id=215546&type=pdf(需要帐户和密码)。
8. Hara, Y. 白色 LED 灯市场前景光明。EE Times,(2002 年 7 月 18 日); http://www.eetimes.com/story/OEG20020718S0013。
9. Choi, I.、Shim, H. 和 Chang, N. 用于掌上嵌入式系统的低功耗彩色 TFT LCD 显示器。在 2002 年低功耗电子和设计国际研讨会论文集,第 112–117 页。蒙特雷,加利福尼亚州: Press,2002 年 8 月; http://portal.acm.org/ft_gateway.cfm?id=566440&type=pdf(需要帐户和密码)。
10. Iyer, S.、Luo, L.、Mayo, R. 和 Ranganathan, P. 面向未来移动环境的能量自适应显示系统设计。在第一届移动系统、应用和服务国际会议论文集,第 245–258 页。旧金山,加利福尼亚州:, Usenix,2003 年 5 月; http://www.usenix.org/events/mobisys03/tech/full_papers/iyer/iyer.pdf(需要订阅)。
11. PDA 便携性和笔记本电脑实用性的融合。白皮书,罗切斯特,纽约州:Interactive Imaging Systems,2001 年; http://www.iisvr.com/downloads/Fusion1.pdf。
12. Chang, F.、Farkas, K. 和 Ranganathan, P. 能量驱动的统计抽样:检测软件热点。在节能计算机系统,编辑:B. Falsafi 和 T. Vijaykumar,计算机科学讲义,第 2325 卷,第 110–129 页。海德堡,德国:Springer-Verlag Heidelberg,2003 年(PACS 2002 的修订论文); http://www.springerlink.com/link.asp?id=yfj75qh16nkr3ra3。
MARC A. VIREDAZ 是惠普实验室的研究员。他拥有瑞士洛桑联邦理工学院 (EPFL) 计算机工程博士学位。他与 W.R. Hamburgen 共同设计了 Itsy 硬件。他的研究兴趣包括掌上电脑和移动计算、硬件设计、低功耗系统和计算机体系结构。
LAWRENCE S. BRAKMO 是惠普实验室的研究员。他拥有亚利桑那大学数学硕士学位和计算机科学博士学位。他是 Itsy 的原始操作系统开发人员之一,参与了 Linux 端口和操作系统能源管理扩展的协作开发。他目前的研究兴趣包括能源/电源管理、掌上电脑和移动计算、操作系统和计算机网络。
WILLIAM R. HAMBURGEN 是惠普实验室的研究员。他拥有麻省理工学院的学士学位和斯坦福大学的 M.S.M.E. 学位。他的兴趣包括系统设计、电源和封装。先前的工作包括封装 BIPS 115W 双极 ECL 微处理器以及发起和领导 Itsy 掌上电脑项目。
最初发表于 Queue 第 1 卷,第 7 期—
在 数字图书馆 中评论本文
Andy Woods - 数据中心的冷却
发电量约占美国和英国一次能源供应的 40% 到 45%,其中很大一部分用于建筑物供暖、制冷和通风。该领域一个新的且日益增长的挑战涉及计算机数据中心和其他用于冷却计算机数据系统的设备。2006 年,美国数据中心使用了约 60 亿千瓦时的电力,约占该国电力消耗的 1.5%。
David J. Brown, Charles Reams - 迈向节能计算
到现在,几乎每个人都意识到了最高层面的能源问题:我们的主要能源正在耗尽,同时商业和家庭环境对能源的需求都在增加,而且能源使用的副作用对全球环境产生了重要的影响。温室气体的排放,例如二氧化碳,现在被大多数气候学家认为是与全球变暖有关联的,这只是其中一个问题。
Eric Saxe - 高效节能软件
电源管理功能的发展速度简直令人惊叹。如今,几乎每种尺寸和级别的计算机系统,从最小的传感器和手持设备到数据中心的“大型”服务器,都提供了无数的功能来减少、计量和限制功耗。如果没有这些功能,风扇噪音将主导办公室环境,而无线笔记本电脑的可用时间将只有短短几个小时(而且前提是能够承受得了发热),同时数据中心的电力和冷却成本及容量也将变得难以管理。
Alexandra Fedorova, Juan Carlos Saez, Daniel Shelepov, Manuel Prieto - 利用非对称多核系统最大化电源效率
在计算系统中,CPU 通常是最大的能源消耗者之一。因此,降低 CPU 功耗在过去几年中一直是学术界和工业界的热门话题。为了创造更高效节能的 CPU,一些研究人员提出了非对称多核架构,该架构有望在提供与传统对称多核处理器相似性能的同时,节省大量电力。