上海市智能信息处理重点实验室 Shanghai Key Laboratory of Intelligent Information Processing

复旦大学 | 计算机科学与工程系
简介 | 宗旨 | 研究内容 | 管理架构
知识科学 | 文本处理 | 算法分析与设计 | 并行编译 | 自然语言理解、语义网 | 认知科学 | 网格计算 | 量子计算 | 图像识别、机器学习、人工生命 | 生物信息学
学术委员会 | 行政领导 | 室务委员会 | 科研队伍
学术会议 | 学术报告 | 学术交流 | 最新成果
开放课题管理办法 | 开放课题申请指南 | 开放课题申请表 | 开放课题年度报告 | 课题资助列表
基于Web的语言驱动足球赛 | 皮影数字动画 | 分形城 | 基因数据仓库
small logo

万丈高楼平地起——浅谈网格计算基础

中科院计算所 李伟

网格技术的产生、发展必须具备以下三个基本条件:计算资源的广域分布、网络技术(特别是Internet)以及不断增长的对资源共享的需求。在计算机技术发展的早期阶段,只有很少数量的大型计算机,它们通常被安装在相互独立的计算中心内,多个计算机用户通过使用终端来共享一台大型机的资源,但却不能同时共享多台大型机的计算资源。随着网络技术的发展,多台大型计算机可以在局域网(LAN)内互连,用户通过网络便可以同时使用多台计算机的资源。而Internet的飞速发展和普及使得网格计算技术的产生成为可能。图1显示了计算资源共享的发展过程。

 

 

 

图1 计算资源共享的发展

系统构成

网格系统可以分为三个基本层次:资源层、中间件层和应用层。
网格资源层是构成网格系统的硬件基础,它包括各种计算资源,如超级计算机、贵重仪器、可视化设备、现有应用软件等,这些计算资源通过网络设备连接起来。网格资源层仅仅实现了计算资源在物理上的连通,但从逻辑上看,这些资源仍然是孤立的,资源共享问题仍然没有得到解决。因此,必须在网格资源层的基础上通过网格中间件层来完成广域计算资源的有效共享。
网格中间件层是指一系列工具和协议软件,其功能是屏蔽网格资源层中计算资源的分布、异构特性,向网格应用层提供透明、一致的使用接口。网格中间件层也称为网格操作系统(Grid Operating System),它同时需要提供用户编程接口和相应的环境,以支持网格应用的开发。
网格应用层是用户需求的具体体现。在网格操作系统的支持下,网格用户可以使用其提供的工具或环境开发各种应用系统。能否在网格系统上开发应用系统以解决各种大型计算问题是衡量网格系统优劣的关键。最近两年,在美国的高性能计算研究领域,网格计算成为非常引人注目的热点。与此同时,企业界也纷纷推出了各自的产品,但到目前为止,仍有相当多的关键技术还有待突破。

三大挑战

网格计算要真正步入实用阶段必须解决以下三大问题:
1. 体系结构设计
从第一台计算机出现到现在,计算机体系结构已经发生了一系列变化,经历了大规模并行处理系统、共享存储型多处理器系统、群集系统等各个发展阶段,这些系统的共性是构成系统的资源相对集中。与此相反的是,组成网格系统的资源是广域分散的,不再局限于单台计算机和小规模局域网范围内。网格计算的最终目标是用网上的多台计算机构成一台虚拟的超级计算机,因此,网格系统的体系结构是我们必须首先解决的问题。简言之,网格系统有哪些组成部分、组成部分之间的关系以及如何协同工作是网格体系结构研究需要解决的问题。
2. 操作系统设计
伴随着计算机体系结构的发展,计算机操作系统也经历了一系列发展变化,总的发展趋势是如何更高效、更合理地使用计算机资源。网格操作系统是网格系统资源的管理者,它所管理的将是广域分布、动态、异构的资源,现有操作系统显然无法满足这一需求。
3. 使用模式设计
网格使用模式解决的是如何使用网格超级计算机的问题。在现有的操作系统上,计算机用户可以使用各种软件工具来完成各种任务。而在网格环境下,用户可能需要通过新的方式来利用网格系统资源。因此,在网格操作系统上设计开发各种工具、应用软件是网格使用模式研究需要解决的关键问题。

研究现状

在国外,最著名的网格计算研究是美国的Globus项目。该项目的主要研究目标有两个:其一是网格技术的研究;其二是相应软件的开发和标准的制定。同时,Globus项目还涉及到网格应用的开发及试验床的建立。最近,Globus项目提出了网格的体系结构模型(图2)。
网格体系结构主要分为以下几个部分:
● 网格结构层(Grid Fabric) 提供资源相关、站点相关的基本功能,便于高层分布式网格服务的实现;
● 网格服务层(Grid Services) 实现资源无关和应用无关的功能,网格服务的实现涉及到地域和机构的分布;
● 网格应用工具层(Grid Application Toolkits) 提供更为专业化的服务和组件用于不同类型的应用;
● 应用层(Application) 由用户开发的应用系统组成,网格用户可以使用其他层次的接口和服务完成网格应用的开发。
我国对网格计算的研究起步较晚,相关工作开始于1998年。由于网格计算是一项刚起步的研究,因此我们在网格计算关键技术的研究方面与国外差距不大,基本处于相同的起跑线上。目前,我国的网格计算研究主要集中于中科院计算所、国防科大、江南计算所、清华大学等几家在高性能计算方面有较强实力的研究单位。这些单位在高性能计算研究方面有很好的技术积累和很强的科研能力。其中,中科院计算所在高性能计算领域的主要成果是曙光3000超级服务器,其他单位的主要成果有银河巨型机、同方探索机群系统等。
从1999年底到2001年初,中科院计算所联合国内十几家科研单位,共同承担了“863”重点项目——“国家高性能计算环境(National High Performance Computing Environment,简称NHPCE)”的研发任务。该项目的目标是建立一个计算资源广域分布、支持异构特性的计算网格示范系统,它把我国的8个高性能计算中心通过Internet连接起来,进行统一的资源管理、信息管理和用户管理,并在此基础上开发了多个需要高性能计算能力的网格应用系统,取得了一系列研究成果。

网格计算

---- Internet的产生与发展,对人们的思维方式、工作模式以及生活理念都产生了巨大的影响与冲击。以E-mail为主要应用的第一代Internet把遍布于世界各地的计算机用TCP/IP协议连接在一起; 第二代Internet则通过Web信息浏览及电子商务应用等信息服务,实现了全球网页的连通; 第三代Internet将“试图实现互联网上所有资源的全面连通,包括计算资源、存储资源、通信资源、软件资源、信息资源、知识资源等”,这就是网格计算(Gird Computing)。

---- 网格计算是构筑在Internet上的一组新兴技术,其基础设施一定是基于IP协议的宽带数字通信网络,它将改变传统的Client/Server和Client/Cluster结构,形成新的Pervasive/Grid体系结构,这种体系结构将使得用户把整个网络视为一个巨大的计算机,并从中享受一体化的、动态变化的、可灵活控制的、智能的、协作式信息服务。目前,网格计算不仅在学术界、研究领域进行着深入的研究与实验,同时也得到了来自产业界诸如IBM、HP、Microsoft、NTT、Intel、SGI和Sun等各大公司的巨资支持与商业应用开发。

---- 网格计算系统一般由网格硬件、网格操作系统、网格界面、网格应用4层基本结构构成,其最突出的特点是资源共享、协同工作和开放性标准。也正因为如此,网格计算目前研究发展的主要障碍便是标准协议的建立和体系结构的确定。

---- 网格计算虽然致力于高速互联网、高性能计算机、大型数据库、远程设备等连通和“一体化”,但网格计算的根本特征应该是资源共享而不是规模巨大,完全可以根据需要建造企业内部网格、局域网网格、家庭网格和个人网格,因此网格计算的应用将非常广泛:卫星图像的快速分析、先进芯片的设计、生物信息科学研究、超级视频会议、制造业的设计与生产、电子商务、数字图书馆及一般的商务应用。此外,开发新的应用、集成现有应用、消除信息及资源孤岛也将成为网格计算责无旁贷的任务。

---- 我们看到在2001年网格计算的概念已被众多的国内外媒体所关注,2002年它的发展将会引起世人更多的重视。

什么是网格计算

随着超级计算机的不断发展,它已经成为复杂科学计算领域的主宰。但以超级计算机为中心的计算模式存在明显的不足,而且目前正在经受挑战。超级计算机虽然是一台处理能力强大的“巨无霸”,但它造价极高,通常只有一些国家级的部门,如航天、气象等部门才有能力配置这样的设备。而随着人们日常工作遇到的商业计算越来越复杂,人们越来越需要数据处理能力更强大的计算机,而超级计算机的价格显然阻止了它进入普通人的工作领域。于是,人们开始寻找一种造价低廉而数据处理能力超强的计算模式,最终科学家们找到了答案———Grid Computing(网格计算)。

网格计算是伴随着互联网而迅速发展起来的,专门针对复杂科学计算的新型计算模式。这种计算模式是利用互联网把分散在不同地理位置的电脑组织成一个“虚拟的超级计算机”,其中每一台参与计算的计算机就是一个“节点”,而整个计算是由成千上万个“节点”组成的“一张网格”,所以这种计算方式叫网格计算。这样组织起来的“虚拟的超级计算机”有两个优势,一个是数据处理能力超强;另一个是能充分利用网上的闲置处理能力。

实际上,网格计算是分布式计算(Distributed Computing)的一种,如果我们说某项工作是分布式的,那么,参与这项工作的一定不只是一台计算机,而是一个计算机网络,显然这种“蚂蚁搬山”的方式将具有很强的数据处理能力。今年年中,NTTData计划与Intel和SGI联合进行一项为期三个月的网格计算试验,届时将有包括家庭、企业和学术机构的100万台计算机相联,其总处理能力将比现有的最快的超级计算机还要快五倍。

充分利用网上的闲置处理能力则是网格计算的有一个优势,网格计算模式首先把要计算的数据分割成若干“小片”,而计算这些“小片”的软件通常是一个预先编制好的屏幕保护程序,然后不同节点的计算机可以根据自己的处理能力下载一个或多个数据片断和这个屏幕保护程序。于是“演出开始了”,只要,节点的计算机的用户不使用计算机时,屏保程序就会工作,这样这台计算机的闲置计算能力就被充分地调动起来了。

这种“蚂蚁搬山”式的计算式的网格计算,看似普通,但却有过及其出色的表现。1999年,SETI@HOME项目是网格计算的一个成功典范。该项目在1999年初开始将分布于世界各地的200万台个人电脑组成计算机阵列,用于搜索射电天文望远镜信号中的外星文明迹象。该项目组称,在不到两年的时间里,这种计算方法已经完成了单台计算机345000年的计算量。可见,这种“蚂蚁搬山”式的分布式计算的处理能力十分强大,正所谓“泰山不辞抔土,故能成其大”。

网格计算不仅受到需要大型科学计算的国家级部门,如航天、气象部门的关注,目前很多大公司也开始追捧这种计算模式,并开始有了相关“动作”。

“蓝色巨人”IBM正在构筑一项名为“Grid Computing”的计划,旨在通过因特网,向每一台个人电脑提供超级的处理能力。IBM公司副总裁、也是这项计划的总设计师欧文·伯杰说,“Grid Computing”是一种整合电脑资源的新手段,它通过因特网把分散在各地的个人电脑连接起来,不仅可使每台个人电脑通过充分利用相互间闲置的电脑能源,来提升各自的电脑处理能力,还可使成千上万的用户在大范围的网络上共享电脑处理功能、文件以及应用软件。 正如网络技术总是从科学开发领域转向企业商务领域一样,我们也希望看到‘Grid Computing’能取得这样的进展。

另一个业界巨人SUN也推出新软件促进网络计算的发展。2001年11月,Sun推出了Sun Grid Engine企业版5.3版软件的β版,继续提升它的网络技术计算水平。该软件自一年前推出以来, Sun Grid Engine 5.2.3版软件的用户已经增长了20倍。今天,全球有118000多颗CPU都是采用Sun Grid Engine软件管理的。

除此之外,一批围绕网格计算的软件公司也逐渐壮大和为人所知并成为受到关注的新商机,如:Entropia、Avaki、Noemix、Data Synapse等等。有业界专家预测,网格计算将成为2002年网络市场发展的热点。据《ForbesASAP》预测,网格技术将在2005年达到高峰,并带来因特网的新生。如果网格技术能促使市场按预期的17%年增长率持续成长的话,那么在2020年将会形成一个年产值20万亿美元的大产业。(责任编辑:刘燕之) 《商务应用

Copyright © 2002-2006 上海市智能信息处理重点实验室 版权所有

地址:上海邯郸路220号 电话:+8621-65654549 传真:+8621-65654253 Email: Webmaster