网格计算:新的希望

来源:百度文库 编辑:神马文学网 时间:2024/04/27 17:45:08
《三思科学》杂志 2004年春季合刊  《网格计算:新的希望》
原载:《三思科学》电子杂志 2004年春季合刊 2004年6月1日 (http://www.oursci.org/magazine/200403/0307.htm)
网格计算:新的希望
柯南
如果沃卓斯基兄弟不是在十多年以前,而是在几年前开始电影Matrix的策划,那么他们也许会用Grid这个更时髦的名字。
我轻轻移动了一下鼠标,打断了它那无休止的计算,开始本文的写作。作为一台个人电脑的完全拥有者,我却心甘情愿的把电脑一半以上的使用时间交给了大洋彼岸的一个研究机构,用于在茫茫的无线电波噪音海洋中寻找另一个文明发出的声音。在这个地球上还有几百万人和我的遭遇相同。

SETI@home的运算界面
你应该知道我在说什么。只要稍微有一点上网的经验,你或许就能接触到它:SETI@Home,一个由全世界数百万计算机用户共同完成的科学项目,同时也是一种新型计算机组织形式的雏形。
积沙成塔
一些热衷于搜寻地外文明的科学家认为,宇宙中的其他文明可能通过无线电信号表明自己的存在。每天,位于波多黎各的阿雷西博射电望远镜都会接受到大量来自宇宙深处的无线电信号。但是要从这些信号中剔除来自地球的无线电干扰,找到最有可能的地外文明信号,需要最先进的超级计算机一刻不停的运转。很显然,科学家没有那么多经费。1999年5月,加州大学伯克利分校的科学家们发布了一个新的屏幕保护程序SETI@Home(在家搜寻地外文明)。作为一个屏幕保护程序,它看上去并不十分讨人喜欢。但是它所担负的主要目的却十分重要:利用个人电脑用户闲置的计算机时间,为搜寻地外文明工作。
尽管个人电脑的进化速度快得让人吃惊,超级计算机同样也在进化。选择前者而不是后者处理天文数字一般的无线电信号数据,看上去有点不可思议。但是科学家早已发现,大多数个人电脑在大多数时间都处于闲置的状态。一台电脑闲置的计算能力对于科学家而言可能是微不足道的,但是如果把计算能力乘以500万呢?

SETI@home
这就是今天的SETI@Home。将近500万注册用户贡献出的计算能力之和相当于世界上最快的超级计算机之一——每秒67万亿次浮点运算。从1999年开始,SETI@Home程序被运行的时间总计超过180万年。目前,SETI@Home是世界上最大、也是最著名的互联网分布式计算项目。尽管迄今为止SETI@Home还没有找到任何地外文明的迹象,它的成功在方法上证明了一种新的计算方式——网格计算(Grid Computing)——是有可能成功的。
超级挑战
SETI@Home的成功激励着一些后来者的加入。如今,在互联网上已经出现了许多类似的分布式计算项目。例如用屏幕保护程序筛选针对天花或者艾滋病的药物,或者计算某些蛋白质可能的折叠结构。但是,所有这些项目所面临的挑战都比不上欧洲核子研究中心(CERN)的科学家所面临的。
在瑞士的日内瓦,CERN的科学家正在建立世界上规模最大的粒子对撞机——大型强子对撞机(LHC)。这个周长27公里的环形庞然大物可以把质子加速到接近光速,然后让它们迎面相撞。
科学家希望在2007年建成的这台对撞机揭示出物质更深层次的秘密。但是这台超级对撞机既是粒子物理学家的美梦,也是计算机专家的噩梦:如果大型强子对撞机开始工作,那么就会从对撞机的探测器中涌出数以拍字节的数据。如果说“拍字节”(10的15次方字节)这样的概念比较抽象的话,那么它相当于填满数百个主流个人电脑的硬盘。
没有什么单独的计算机能从容不迫的处理、储存大型强子对撞机产生的数据,更不要说让超过40多个国家和地区的科学家共享这些数据。CERN的科学家考虑使用一种新的计算机组织形式——网格计算。

大型强子对撞机(LHC)效果图
从2000年开始,CERN的科学家着手建立这样一个和大型强子对撞机一样庞大的计算机系统。大型强子对撞机的计算网格类似于SETI@Home的做法,但是前者就不仅仅是一般个人电脑用户的消遣了。连接在这个计算网格上的计算机既有粒子物理学家的个人电脑,也有许多国家和地区研究机构的超级计算机。大型强子对撞机产生的天文数字数据会分布储存在这些计算机中,而不是某一台计算机单独负责存储数据。而这些数据的分析计算也是由网格中的所有计算机协作完成的。
计算机的“电网”
一旦CERN的这个计算网格开始工作,使用它的科学家将不会感到他所面对的是成千上万联网的计算机,而是一台虚拟的超级计算机。使用者不用关心数据储存在哪里,又是在哪里被分析和处理的。只要在一台联入计算网格的计算机上输入想要查找或者计算的内容,在很短时间内网格就会把结果返回给使用者。
这就是网格计算。网格(Grid)在英语中可以指输电网。1990年代中期,美国阿冈国家实验室的一位科学家伊恩·福斯特(Ian Foster)最先把网格这个词从从输电网扩展到了计算机领域。
在福斯特看来,计算机组成的网格类似于输电网:当我们使用电器的时候,从来没有关心电力来自哪个发电厂,以及经过了什么电压变换。我们只是简单的把电器插入墙壁上的电源插座。然而隐藏在插座后面的则是许多发电厂和把它们连接在一起的输电线路。计算机网格模仿了输电网。当你把一台电脑接入计算机网格的时候,就相当于寻求使用计算机网格的“计算力”。你不用关心数据是由什么计算机储存和计算的,正如你并不关心电源插座后面的故事。
网格计算就如同建立计算机的输电网。一个发电厂多余的发电能力可以通过输电网传送给远方的城市用户,一台计算机多余的计算能力远可以通过计算网格,让远方的用户加以利用。正如加州大学伯克利分校的科学家所做的那样。他们只是把由射电望远镜接收到的信号简单的放在一台专门的计算机上(相当于给电器接上电源),然后就会有数以百万计的个人电脑(相当于发电厂)把这些数据分而治之(SETI@Home)。
感受到网格巨大威力的不仅仅是科学家,从IBM到SUN这样的信息技术公司,都把目光和资金投向了这个正在兴起的概念。例如,IBM已经投资数十亿美元用于网格计算的研发。而各种专门从事网格计算的公司,也正在雨后春笋般地冒出来。
当然,作为一种正在兴起的概念,网格并非已经完美无缺。计算机科学家面临的挑战包括,如何让不同型号、使用不同软件的计算机在同一个网格中协同作战;如何防止网格中病毒和黑客的威胁,等等。
20多年以前,CERN的一位计算机专家为了让互联网更容易使用,发明了划时代的万维网(WWW)技术。20多年过去了,现在我们把WWW一种普通的技术。也许有一天,计算机网格就像电网一样,会成为我们生活中最平淡无奇的组成部分之一。
“网络就是计算机”的概念似乎已经落后了,网格才是。