2009/03/01

计算机到底需要多少能量
计算机的计算到底需要多少能量.
今天和朋友谈起计算机的计算到底需要多少能量,我说在某种程度上说,可以为0,至少趋向于0.
朋友不解,一直让我举出科学依据.呵呵,我当时不知道说什么好,说实在的,这个还需要依据吗?也许我是学计算机的,他不是,所以他有这个疑问.
计算机的运行,最核心的部分是cpu,是一个纯逻辑的部件.一个逻辑的运算,只是状态的改变,没有任何理由说这个逻辑状态比那个逻辑状态的能量值来的高,而且逻辑状态的改变,也没有任何理由可以说是需要消耗能量的.
现在的cpu99%以上的能量消耗是在发热上面,但某一种技术都有某一种技术的局限性,现在的计算机是以电作为能量来驱动的,而现在的电路都没有超导能力,电路消耗的能量,或者说是电路的发热才是cpu电能消耗的罪魁,而我们的计算结果,只是用电来保存了某种状态,就像我们小时候用一根火柴表示1,10根表示10一个道理,其实我们并不需要搬运火柴的能量,他只是一个表示,一个逻辑的表示,完全和电能的消耗没有关系.
有时候我很不喜欢证明,因为如果两个人没有共同的平台,很难把一件事情说清楚.
实际上,计算机不需要消耗能量这个论题一样,人的移动其实从很大的程度上讲,也是不需要的,但这个很难实现,因为你的移动必然要摩擦,你不可能造出无摩擦的公路,或者人的世界的现有事实太多了,要考虑的问题也太多,但计算机不一样,我们需要的仅仅是逻辑,从这点看我们不需要消耗能量是完全可能的.
我们需要的是找出某种方式,达到这三个目标,1,逻辑状态的承载体,2,在此承载体上改变状态的办法,3,这个改变必须可以规模进行.
我们可以找出任何达到这三个条件的办法,只是说可能现在电子的办法更经济实用,更加可以商业化.
我们所有的设备,其实无外乎输入和输出,其实使用的也就是一个有状态或者无状态的黑盒子,我们需要的是一个算法,这个黑盒子就是算法,这个黑盒子可以以任何一种方式来实现:光,电,声,或者人工(呵呵,只要你不觉得速度慢).
所以,其实计算机抽象到最后就是协作,节点和节点之间的协作,这个节点未必是实际的物理节点,也可能是某种抽象层次的节点,比如网络协议栈中层.

5 评论 :

jkler_doyourself 说...

我怀疑,驱动状态改变,应该都是需要能量的!就像一种惯性一样,驱动这种惯性改变的都需要力的作用!

恶魔的尾巴 说...

信息和光声一样,是不在牛顿物理定律范围内的,他甚至不需要能量,只是逻辑.

jkler_doyourself 说...

世界万物还是相互联系的,这种联系是需要消解能量的!就像在风中颤动的风筝,是会消解一部分风的能量的!逻辑可能是最深刻的宇宙规律,所以处于这个宇宙中的人和物都能感知它,而按它的要求做事!

恶魔的尾巴 说...

好长时间没处理这个博客了,或许你说的是对的,但问题的关键是,信息变化所消解的能量和信息处理部件所消耗的能量之间不是一个数量级的,
几乎可以忽略不计。

恶魔的尾巴 说...

换句话说,信息的改变,或者信息的载体,可以是任何物质,只要找到一种能承载这种信息改变的载体,然后找到相应的和人类的输入接口(比如五感,或者直接思维)相匹配的方式,就能实现信息的处理和交流。