打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
!!!计算的本质 信息熵和能量、计算和功耗

乱扯计算

并行,从70年代到现在,都没有解决好。多核,听起来很美,但也不少年了,到现在还是在双核,四核上徘徊。最后一级cache、一致性问题也没有很好的突破。ARM开始觊觎Intel的地盘,用了个时髦的名号:低功耗。

计算为了什么,计算的本质是什么?低功耗最低能有多少,如果用超导体做CPU,功耗真的将为0吗?乱扯一下。

Table of Contents

1 从信息论扯起

香农,学过信息论的应该都知道。他建立了信息量的理论基础。这不是一般的牛人,在MIT念硕士的时候,就把布尔代数和电路系统的开关对应起来,并用布尔代数理论优化该电路。在MIT念博士的时候,研究理论遗传学中的代数学。之后,就在贝尔实验室创建了信息论。

信息论中最重要的就是熵。熵说明了信息内容的不确定性。熵越大,平均每次得到的符号所带来的信息越多。比如中文汉字的平均信息熵是9.65bit,而英文是4.03bit。所以中文难学,词义最丰富,行文最简练,用起来也最优美。

信息熵反映了人接触到的信息的平均价值。读万卷书,行万里路。老祖宗用这句朴实的话,表明了书所带给人的大量信息。现在,我们坐在电脑前,上网,其实也是在阅读各种各样的文字、图片和视频,除非是查东西,否则给人的感觉是,上网浪费时间。所以现在,这个所谓信息爆炸的时代,其实是人所能接触到的信息平均熵太小。

搜索引擎就是很典型的增加信息熵的工具,所以现在搜索这么火。碰巧今天遇到一个很有趣的问题,计算,计算机所做的一切动作,为了什么?如何量化?

2 计算是增大信息熵的过程

说一个计算机有多快,经常要用MIPS,一秒钟执行了多少条指令,或者Flops,一秒钟执行了多少次浮点运算。这些都是单就计算机执行计算的角度来考虑。我们用电脑,多半是用来处理信息,或者表达信息。不管是大型网站的服务器,给浏览者提供网站服务;还是个人电脑上的WORD程序。都是在想办法处理信息,然后提取,把最大的信息量呈现给用户。即,这些是计算机增大信息熵的过程。

还有一类,比如加密,比如视频编解码,都是把某种信息呈现模式转换为另外一种信息呈现模式。虽然只是单纯的转换,但从人类的角度,这些转换并不是必须的。完全可以通过更发达的计算技术来避免这些。人类最终需要的是,更高效快捷的获得想要的信息,所以有这些计算存在,但实际上,计算还是为了增大信息熵。

3 信息熵和能量、计算和功耗

有个小实验,把火柴盒打开,火柴虽然是整齐的放在盒中,但落在地上是凌乱的。可见,自然界是倾向于信息熵最小化的。如果没有外界能量,信息熵会逐渐变小。所以维护和提取信息的过程,是消耗能量的过程。计算作为加工信息的典型过程,消耗能量也是必须的。熵增原理也说明,只有在绝热情况下,才能避免熵的减小。

可以有一种叫做计算能的东西吗?有,那就是熵势。计算前后的熵势之差,就是计算带来的熵提高,也就是计算能。那么,能像柴油机测量热能动能转换率那样,测量计算机的效率吗?这个效率不是超级计算机简单的浮点运算次数除以功耗的能效计算方法。这只是执行浮点运算动作的效率,并不是计算带来的信息量变化的效率,计算能的量化才是最以人为本的计算设备性能衡量标。

目前的计算机界一团乱码。各种各样的指令集、编程模型、程序语言、体系结构。并行、存储墙。但完成的任务都相同,只是计算机领域的这些技术,一直没有很好、很漂亮的数学模型能统一起来。反而是这种基于实验的技术,大大改变了人们的生活,让无数码农不至于没饭吃。现在的电子计算机,消耗电能做计算,CPU会发热。都吵着要做低功耗,功耗能降到多少,有没有理论下限?这理论下限中消耗的能量哪里去了,转换成了什么?爱因斯坦用个简单的 E=MC2,把物质世界和能量世界划了个等号。那计算呢,信息熵在计算过程中,如何一步步的转换,能量如何一步步的被消耗。

有意思的问题很多,期待一个人出现,拨开层层迷雾,把计算世界的本质,展现在人类的面前。如同当年的爱因斯坦和质能方程、香农和信息论、傅里叶和信号处理。 只要能实现计算的目的,形式非要是电子计算机吗?图灵机也是必须的吗?如果有了新的形式,会不会有更舒服的编程语言出现。

这个语言不再是把010101码变成更方便人看的汇编语言,也不是做了稍高点封装的C,也不是加了面向对象特性的C++/JAVA,也不是把编译放在执行时的脚本语言,更不是封装了所有副作用的函数式语言,而是一种新的,全新的思考问题的方式。更适合人类的思考方式。

期待一把钥匙

4 题外话

一定有某种理论,可以让计算、熵、能量联系到一起,只是这种理论还没有出现。或许创在这个理论的人,现在还是一个单细胞小蝌蚪:),或者还在哪个山沟里上希望小学,或者已经悄悄的写了篇只有两页的文章,偷偷的藏着等待发表的时机。

今天,某高人还聊起了存储墙问题。随着光互联技术、3D集成电路设计技术的应用,memory wall问题将不再是访存物理延时问题,将是如何在逻辑上解决一致性问题。也就是说,因为光互联和3D集成电路带来的访存加速,多级cache已经不是必须的了。但如何逻辑上保证一致性,在大规模并行时,读写同一个变量,如何解决依赖关系,将是关键。

  • 3D集成电路技术,可以简单的认为是把多个CPU芯片叠加在一起
  • 光互联,使用光而非电子脉冲作为CPU片内和片间的数据传输方式。

《编译点滴》恭祝各位码农们,在2011年1月1日开始的365天里,bug越来越少,性能嗷嗷的涨,公司上班的多多加薪,学校上学的多多进步,身在不管国外还是国内的,平安健康幸福。家里的老老少少,都事事顺心。万事如意。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
《香农传》| 汪恒解读
从电脑信息论到量脑信息论(修改稿)
第一章选择题
唯信息论的若干基本概念(1)?——宇宙秩序模组是什么?
比肩爱因斯坦,神似特斯拉,赛过牛顿的天才“斜杠朋克”
从负熵到“负熵论”
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服