更新时间:2021-04-16 20:21
网格计算是分布式计算的一种,是一门计算机科学。它研究如何把一个需要非常巨大的计算能力才能解决的问题分成许多小的部分,然后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来得到最终结果。 最近的分布式计算项目已经被用于使用世界各地成千上万志愿者的计算机的闲置计算能力,通过因特网,您可以分析来自外太空的电讯号,寻找隐蔽的黑洞,并探索可能存在的外星智慧生命;您可以寻找超过1000万位数字的梅森质数;您也可以寻找并发现对抗艾滋病毒更为有效的药物。用以完成需要惊人的计算量的庞大项目。
分布式计算是利用互联网上的计算机的 CPU 的闲置处理能力来解决大型计算问题的一种计算科学。
随着计算机的普及,个人电脑开始进入千家万户。与之伴随产生的是电脑的利用问题。越来越多的电脑处于闲置状态,即使在开机状态下CPU的潜力也远远不能被完全利用。我们可以想象,一台家用的计算机将大多数的时间花费在“等待”上面。即便是使用者实际使用他们的计算机时,处理器依然是寂静的消费,依然是不计其数的等待(等待输入,但实际上并没有做什么)。互联网的出现, 使得连接调用所有这些拥有闲置计算资源的计算机系统成为了现实。那么,一些本身非常复杂的但是却很适合于划分为大量的更小的计算片断的问题被提出来,然后由某个研究机构通过大量艰辛的工作开发出计算用服务端和客户端。服务端负责将计算问题分成许多小的计算部分,然后把这些部分分配给许多联网参与计算的计算机进行并行处理,最后将这些计算结果综合起来得到最终的结果。
分布式计算意味着应用程序不再“绑定”到具体的物理系统和平台软件上,数据和程序是能够在计算节点间“流动起来”的。
当然,这看起来也似乎很原始、很困难,但是随着参与者和参与计算的计算机的数量的不断增加, 计算计划变得非常迅速,而且被实践证明是的确可行的。目前一些较大的分布式计算项目的处理能力已经可以达到甚而超过目前世界上速度最快的巨型计算机。您也可以选择参加某些项目以捐赠的CPU 内核处理时间,您将发现您所提供的 CPU 内核处理时间将出现在项目的贡献统计中。您可以和其他的参与者竞争贡献时间的排名,您也可以加入一个已经存在的计算团体或者自己组建一个计算小组。这种方法很利于调动参与者的热情。
参与分布式计算——一种能充分发挥您的个人电脑的利用价值的最有意义的选择——只需要下载有关程序,然后这个程序会以最低的优先度在计算机上运行,这对平时正常使用计算机几乎没有影响。如果你想利用计算机的空余时间做点有益的事情,还犹豫什么?马上行动起来吧,你的微不足道的付出或许就能使你在人类科学的发展史上留下不小的一笔呢!
(中国科学技术信息研究所对分布式计算的定义)
分布式计算是一种新提出的计算方式。所谓分布式计算就是在两个或多个软件互相共享信息,这些软件既可以在同一台计算机上运行,也可以在通过网络连接起来的多台计算机上运行。
分布式计算比起其它算法具有以下几个优点:
1、稀有资源可以共享,
3、可以把程序放在最适合运行它的计算机上,
其中,共享稀有资源和平衡负载是计算机分布式计算的核心思想之一。
实际上,网格计算就是分布式计算的一种。如果我们说某项工作是分布式的,那么,参与这项工作的一定不只是一台计算机,而是一个计算机网络,显然这种“蚂蚁搬山”的方式将具有很强的数据处理能力。
下面,我们看看它是怎么工作的:
首先, 要发现一个需要非常巨大的计算能力才能解决的问题。这类问题一般是跨学科的、极富挑战性的、人类急待解决的科研课题。其中较为著名的是:
1.解决较为复杂的数学问题,例如:GIMPS(寻找最大的梅森素数)。
2.研究寻找最为安全的密码系统,例如:RC-72(密码破解)。
3.生物病理研究,例如:Folding@home(研究蛋白质折叠,误解,聚合及由此引起的相关疾病)。
4.各种各样疾病的药物研究,例如:United Devices(寻找对抗癌症的有效的药物)。
5.信号处理,例如:SETI@Home(在家寻找地外文明)。
从这些实际的例子可以看出,这些项目都很庞大,需要惊人的计算量,仅仅由单个的电脑或是个人在一个能让人接受的时间内计算完成是决不可能的。在以前,这些问题都应该由超级计算机来解决。但是, 超级计算机的造价和维护非常的昂贵,这不是一个普通的科研组织所能承受的。随着科学的发展,一种廉价的、高效的、维护方便的计算方法应运而生——分布式计算!
网格计算的目的是,通过任何一台计算机都可以提供无限的计算能力,可以接入浩如烟海的信息。这种环境将能够使各企业解决以前难以处理的问题,最有效地使用他们的系统,满足客户要求并降低他们计算机资源的拥有和管理总成本。网格计算的主要目的是设计一种能够提供以下功能的系统:
提高或拓展型企业内所有计算资源的效率和利用率,满足最终用户的需求,同时能够解决以前由于计算、数据或存储资源的短缺而无法解决的问题。
建立虚拟组织,通过让他们共享应用和数据来对公共问题进行合作。
整合计算能力、存储和其他资源,能使得需要大量计算资源的巨大问题求解成为可能。
通过对这些资源进行共享、有效优化和整体管理,能够降低计算的总成本。
网格计算主要被各大学和研究实验室用于高性能计算的项目。这些项目要求巨大的计算能力,或需要接入大量数据。
网格计算的目的是支持所有行业的电子商务应用。例如,飞机和汽车等复杂产品的生产要求对产品设计、产品组装和产品生命周期管理进行计算密集型模拟。其他一些实例还有,通过 Monte Carlo 方法对复杂金融环境的模拟,以及生命科学领域的许多项目。
网格环境的最终目的是,从简单的资源集中发展到数据共享,最后发展到协作处理和有质量的服务(Quality of Service)。
资源集中 —— 使公司用户能够将公司的整个 IT 基础设施看作是一台计算机,能够根据他们的需要找到尚未被利用的资源。
数据共享 —— 使各公司接入远程数据。这对某些生命科学项目尤其有用,因为在这些项目中,各公司需要和其他公司共享人类基因数据。
通过网格计算来合作 —— 使广泛分散在各地的组织能够在一定的项目上进行合作,整合业务流程,共享从工程蓝图到软件应用程序等所有信息,协同处理项目中的问题。
有质量的服务(QoS)——是指能针对不同用户或者不同数据流采用相应不同的优先级,或者是根据应用程序的要求,保证数据流的性能达到一定的水准。为同一网络中的各结点提供质量有保障的服务。
与网格计算不同,云计算更多的是由工业界主导发展的一套技术和标准。云计算和网格计算都能够提高IT资源的利用率。但是云计算侧重于IT资源的整合,整合后按需提供IT资源;网格计算侧重于不同组织间计算能力的连接。云计算依靠IT资源供给的灵活性,革新了IT产业的商业模式,是基础IT资源外包商业模式的典型运用。网格计算是拥有计算能力的节点自发形成联盟,共同解决涉及大规模计算的问题,是基础IT资源联合共享模式的运用。