为什么人类做一件事情不需要花费大量的精力,而计算机做同样的事情却消耗大量的精力?

神译局是36Kr旗下的编译团队,专注于科技、商业、职场、生活等领域,专注于引进国外的新技术、新理念、新趋势。

编者按:目前美国全部能源消耗的5%左右用于计算机运算,这对整个经济来说是一笔巨大的成本。此外,这些计算机使用的所有能量最终都将转化为热量。这就产生了第二个成本:防止电脑过热的成本。为什么人类做一件事情不需要花费大量的精力,而计算机做同样的事情却消耗大量的精力?计算机的效率可能会大大提高,但要做到这一点,我们需要更好地理解计算的热力学。这篇文章的原标题是《为什么计算机要用那么多能量?》

计算机为什么和人脑比起来,消耗那么多能量?  第1张微软目前正在进行一系列有趣的硬件实验。该公司将计算机服务器放入一个经过改造的容器中,并将其浸入大海中。最新一轮实验正在苏格兰奥克尼群岛附近进行,涉及864台标准的微软数据中心服务器。很多人质疑这家西雅图高科技公司的合理性,但说真的,微软为什么是要这么做吗?

原因有几个,但最重要的一个是,当电脑服务器在海底时,保持凉爽的成本要低得多。这个降温是一笔不小的开支。确切的估计会有所不同,但目前美国所有能源消耗的5%左右用于计算机的运行,这对整个经济来说是一笔巨大的成本。此外,这些计算机使用的所有能量最终都将转化为热量。这就产生了第二个成本:防止电脑过热的成本。

这些问题不仅仅出现在人工和数字计算机中。自然界生产的计算机有很多,也需要大量的能源。举个尖锐的例子,人脑就是一台电脑。这台特殊的计算机消耗的热量约占人类消耗的总热量的10%-20%。想想看:我们在非洲大草原上的祖先每天要多寻找20%的食物,只是为了不让忘恩负义的粉红色果冻球在他们的肩膀上发脾气。多找20%的食物,是对我们祖先生殖能力的极大惩罚。这种惩罚是进化中智力如此稀少的原因吗?没有人知道,甚至没有人曾经有数学工具去思考这个问题。

除了大脑,还有其他生物计算机,同样消耗大量能量。例如,许多蜂窝系统可以被视为计算机。事实上,对比人工计算机和蜂窝计算机的热力学成本,现代计算机工程师可以说是非常小巫见大巫。比如在细胞的核糖体中,细胞能量预算的很大一部分是用来将RNA翻译成氨基酸序列(也就是蛋白质)。但是这个计算的热力学效率,核糖体每一个基本操作所需要的能量,比我们现在的人工计算机要高很多个数量级。我们能在人工计算机中使用细胞使用的“技能”吗?回到前面的生物学例子,我们能在人工计算机中使用人脑在计算中使用的技能吗?

更一般的,为什么电脑消耗这么多能源?控制系统运行的精确计算与所需能量之间关系的基本物理规律是什么?我们能否重新设计计算机的算法,使其更加节能?

这些是我和我的合作者在圣达菲研究所正在进行的研究项目中试图解决的一些问题。我们不是第一个研究这些问题的人;一个半世纪以来,我们一直使用半形式推理来考虑这些问题。这种推理基本上是基于“包络”(非常粗略的计算)分析,而不是严格的数学论证,因为当时相关的数学还没有完全成熟。

先前的工作已经产生了许多重要的见解,特别是罗尔夫·兰道尔、查尔斯·贝内特等人在20世纪中后期的工作。

然而,这些早期的工作也有局限性,因为它试图应用平衡统计物理来分析计算机的热力学。问题是根据定义,一个平衡的系统是一个状态永远不会改变的系统。所以不管它们是什么,计算机肯定是不平衡的系统。事实上,它们往往是远离平衡系统的系统。

幸运的是,完全独立于这项早期工作,在过去的几十年里,非平衡统计物理领域(与被称为“随机热力学”的领域密切相关)取得了一些重大突破。这些突破使我们能够分析关于非平衡系统中热量、能量和信息如何转化的各种问题。

这些分析提供了一些令人惊讶的预测。例如,我们现在可以计算给定的纳米尺度系统在给定的时间间隔内违反第二定律并降低其熵的(非零)概率。我们现在明白了,热力学第二定律并不是说封闭系统的熵不能减少,只是说它的期望熵不能减少。

这里不存在半形式推理引起的争议。相反,顶级期刊上有数百篇同行评议的文章,其中很大一部分涉及理论预测的实验证实。

现在我们有了正确的工具,我们可以用一种完全正式的方式重新审视计算热力学的整个主题。我们对兰道尔等人关注的话题:比特擦除做了这样的研究,现在我们对擦除比特的热力学代价有了完全形式化的理解(事实证明这是惊人的微妙)。根据朗道尔原理,在平衡状态下擦除1比特信息所需的能量至少为kTln2(k为玻尔兹曼常数,t为环境温度),并给出了计算机能耗的理论下限。

然而,计算机科学的范围远远超出了计算特定位被擦除的次数。由于非平衡统计物理的突破,我们现在可以从热力学的角度研究计算机科学的其他部分。例如,从比特到电路,我和我的合作者现在对“线性电路”的热力学成本有了详细的分析。令人惊讶的是,这种分析导致了信息论的新扩展。此外,与Landauer发起的分析不同,这种对电路热力学成本的分析是准确的,而不仅仅是下限。

传统的计算机科学是关于内存资源和执行计算所需步骤数之间的权衡。针对上述情况,似乎在执行一次计算时,可能会有比传统计算机科学所理解的更多的热力学权衡,而且除了内存资源和时间步长的成本,还涉及热力学成本。这种权衡将适用于手动和生物计算机。

显然,要发展这种现代的“计算热力学”,还有很多工作要做。

(译者:Tikvi)

本文来自翻译,转载请注明出处。