迎接P2P分布式并行计算

 今年是处理器的“双核年”。多年以来,Intel和AMD都在持续努力提升CPU计算能力,在单芯片频率达到近乎极限后,终于将CPU推入多内核时代。

现今的个人计算机,运算能力是早期大型计算机的百倍以上,这是拜软件业与硬件业互相促进之赐。众所周知的例子,是所谓“微软-英特尔”联盟,即操作系统和处理器相互刺激市场需求。市场竞合的结果,导致寡头垄断局面形成;在个人电脑市场上,两硬(Intel、AMD)一软(微软)分蛋糕分得不亦乐乎。
 
我们需要这么快的计算机吗?人类追求极限的永恒需要,会让我们在追求更高计算能力的路上继续走下去。然而,“更高计算能力”并不一定意味着“更快的CPU”,所有CPU计算能力的总和,总是大于单个CPU,分布式并行计算,提供了让许多CPU协同工作的可能性。
 
多CPU(多台计算机)协同,基本上是软件层面的问题,软件层面的问题,最终还是操作系统平台的问题。互联网给了Google一个机会,把运算放到客户端去执行,这是一种聪明的做法——它意味着更少的中央服务器投入和更好的用户体验。Google持续推出基于Web的新服务,几乎让人觉得Web OS时代已经到来。这判断为时过早,可以说,目前Web客户端平台运算能力相对于纯本地程序,是相当低下的;再者,浏览器本身,仍然需要在操作系统之上运行;其三,这种架构仍然没有将客户计算机有机地整合起来。
 
IBM等大公司,推网格计算概念已有多时,实质成果还不如小小一个BT/eMule来得大。P2P技术用在文件共享上,已经改变了整个娱乐业格局,如果它被应用于运算能力协同上,前途无可限量。
 
互联网会更加普及,未来所有个人设备都会随时在线,设备(客户端)是人类个体的智能代理。如果把每个设备看作CPU的一个内核,将能组成一个运算能力强大的多核CPU。过去几十年,计算机CPU和操作系统,一直在朝着高度集成化方向发展,导致软、硬件体系结构趋向于高度复杂,单机运算能力也在逼近极限。基于P2P的分布式并行计算,另辟蹊径,化解了单机高度集成带来的复杂度。
 
基于P2P的广域网分布式并行计算,有两个问题需要解决:
 
第一,协同机制。客户端之间如何互相协作、如何分解问题、如何解决通讯导致的延迟、如何实现“热插拔”……

第二,信用机制。WebService租用和ASP(Application Service Provider)未能变成主流市场,很大程度上是因为信用机制不够健全。信用有两个层面,一个是信用观念,一个是信用技术,前者取决于后者。

除了一些科研项目外,目前尚不存在影响力广泛的广域网分布式并行计算应用。P2P技术的应用,仍停留在较低层次的文件共享上。最有可能让P2P分布式并行计算得以实现的,是操作系统厂商。《黑客帝国》的英文原名是Matrix,即矩阵;该片描写的,其实就是一个P2P并行运算的场景。片末,人类和计算机达成妥协,或许也预示了P2P并行运算的光辉未来。

P2P分布式并行计算,离我们并不遥远。它得以广泛应用之日,也将是软硬件体系架构大变革之时。那一天,CPU将和我们的大脑一起被解放。

(为《程序员》作)



Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1048474


你可能感兴趣的:(并行计算)