什么是分布试计算
分布式计算实际上并不是用来减少计算机处理器的负载。它实际上所做的是能够以更快的速度和效率处理或运行复杂且资源密集型的程序。
分布式计算实际上可以被视为试图用数百或数千台个人计算机创建虚拟超级计算机。
什么是分布式计算
分布式计算是一种与集中式计算相反的计算方式。随着计算技术的发展,一些应用需要非常巨大的计算能力才能完成。
如果采用中心化计算,需要很长时间才能完成。
分布式计算将应用程序分解为许多小部分,并将它们分配给多台计算机进行处理。
这样可以节省整体计算时间,大大提高计算效率。
分布式计算的解释和定义:广义上讲,分布式计算是一门计算机科学,研究如何将一个需要非常大计算能力的问题划分为许多小的部分,然后将这些部分分配给许多计算机来处理。
最后将这些计算结果结合起来得到最终的结果。
最近的分布式计算项目已被用来利用世界各地数千台志愿者计算机的闲置计算能力。
通过互联网,你可以分析来自外太空的电信号,寻找隐藏的黑洞,探索外星智慧生命的可能存在;可以搜索1000万位以上的梅森素数;您还可以寻找和发现更有效的抗艾滋病毒药物。
这些项目非常庞大,需要的计算量惊人。
单个计算机或个人在可接受的时间内完成它们是绝对不可能的。
中国科学院将分布式计算定义为一种新的计算方法。
所谓分布式计算,就是两个或多个软件相互共享信息。
这些软件可以在同一台计算机上运行,也可以在通过网络连接的多台计算机上运行。
分布式计算与其他算法相比有以下优点:1、稀有资源可以共享。
2.分布式计算可以平衡多台计算机上的计算负载。
3.您可以将程序放置在最适合运行它的计算机上。
其中,共享稀缺资源和平衡负载是计算机分布式计算的核心思想之一。
网格计算事实上,网格计算是分布式计算的一种。
如果某个作业是分布式的,那么参与该作业的一定不仅仅是一台计算机,而是一个计算机网络。
显然,这种“蚂蚁搬山”的方式将具有强大的数据处理能力。
网格计算的本质是资源的组合和共享,保证系统的安全。
工作原理分布式计算是利用互联网上计算机中央处理器的空闲处理能力来解决大规模计算问题的计算科学。
下面来看看它是如何工作的:首先,发现一个需要大量计算能力才能解决的问题。
此类问题一般都是跨学科的、极具挑战性的、人类急需解决的科学研究课题。
其中比较著名的就是:解决比较复杂的数学问题,比如:GIMPS(寻找最大的梅森素数)。
研究寻找最安全的密码系统,例如:RC-72(代码破解)。
生物病理学研究,例如:Folding@home(研究蛋白质折叠、误解、聚集以及由此引起的相关疾病)。
针对各种疾病的药物研究,例如:UnitedDevices(寻找对抗癌症的有效药物)。
信号处理,例如:SETI@Home(在家中搜索外星智慧生物)。
过去,这些问题应该由超级计算机来解决。
然而,建造和维护超级计算机的成本非常昂贵,这不是普通科研机构能够承受的。
随着科学的发展,出现了一种廉价、高效、易于维护的计算方式——分布式计算!随着电脑的普及,个人电脑开始进入千家万户的家庭。
随之而来的是计算机使用的问题。
越来越多的计算机处于闲置状态,即使打开电源,中央处理单元的潜力也远未得到充分利用。
正如您可以想象的那样,家用计算机大部分时间都在“等待”。
即使用户实际使用计算机时,处理器仍然在做大量静默工作(等待输入但实际上不执行任何操作)。
互联网的出现,使得连接和调用所有这些计算资源有限的计算机系统成为现实。
嗯,本身就很复杂的东西,很适合分成大量的。
较小的计算块的问题被提出来,然后一个研究所做了很多艰苦的工作来开发计算服务器和客户端。
服务器负责将计算问题划分为许多小的计算部分,然后将这些部分分配给参与网络的许多计算机并行处理,最后整合这些计算结果得到最终结果。
当然,这可能看起来原始且困难,但随着参与计算的参与者和计算机数量不断增加,计算计划变得非常快,并且在实践中被证明是可行的。
目前,一些较大的分布式计算项目的处理能力可以达到甚至超过世界上最快的超级计算机。
您还可以选择参与某些项目来捐赠CPU核心处理时间,您会发现您提供的CPU核心处理时间会出现在项目的贡献统计中。
您可以与其他参与者竞争,根据您的时间贡献进行排名,也可以加入现有的计算小组或组建自己的计算小组。
这种方法对于激励参与者非常有用。
随着私人团队逐渐增多,许多大型组织(如公司、学校和各种网站)也开始组建自己的团队。
同时,也形成了大量以分布式计算技术和项目讨论为主题的社区。
这些社区大多翻译制作分布式计算项目的使用教程并发布相关技术文章,并提供必要的技术支持。
那么谁可以加入这些项目呢?当然,任何人都可以!如果您已经加入了一个项目,并且曾经考虑加入一个计算小组,那么您会在中国分布式计算中心和论坛中找到自己的家。
任何人都可以加入我们网站组建的任何分布式计算小组。
希望您在中国分布式总部和论坛中找到乐趣。
参与分布式计算——充分利用个人计算机最有意义的选择之一——你只需要下载相关程序,然后该程序就会在优先级最低的计算机上运行,正常使用是正常的。
使用电脑几乎没有影响。
如果您想利用计算机上的空闲时间做一些有用的事情,您为什么还要犹豫呢?现在就行动起来,你的微不足道的贡献可能会让你在人类科学发展史上留下浓墨重彩的一笔!BOINC分布式计算平台BOINC是BerkeleyOpenInfrastructureforNetworkComputing的缩写,即伯克利开放网络计算平台。
BOINC是一个分布式计算平台,可以被不同的分布式计算共享。
不同的分布式计算项目可以直接使用BOINC的公共上传下载系统、统计系统等,不仅发挥了各种分布式计算之间的协调性,也使得分布式计算的管理和使用更加方便、易用。
BOINC项目由加州大学伯克利分校(U.C.伯克利)。
BOINC项目由美国国家科学基金会资助。
BOINC有自己的积分系统,因为BOINC上可以运行的项目差异很大。
例如,项目A的任务包(Workunit,简称WU)在某台机器上需要3个小时才能完成,而项目B的任务包在这台机器上需要3个小时才能完成。
需要30个小时才能完成。
显然,用WU的数量来衡量工作量是不可行的。
同样,机器性能也参差不齐,更不可能通过CPU时间来衡量工作负载。
积分系统只能通过一定的算法获得用户实际完成的计算量。
本文讲解BOINC中的积分计算方法。
中国的分布式计算据中国互联网信息中心(CNNIC)统计,中国网民数量已增长至全球的12%左右,并且仍在快速增长。
这里所说的中国网民包括中国大陆、港澳台地区以及海外华人。
与中国互联网的快速发展相比,中国的分布式计算发展缓慢。
在我看来,网民数量的统计并不能非常客观地反映一个国家的信息化水平,但参与分布式计算的网民数量或比例可以清晰地体现出这个国家的科普水平。
在这方面,毫无疑问,欧美国家是非常领先的。
在北欧国家,几乎有一半的计算机参与分布式计算项目,这是一个惊人的数字。
我们来看看中国和印度。
虽然他们拥有很多最新的技术,并且在网络普及的过程中看起来表现不错,但是他们在分布式计算方面却非常薄弱。
让我们看一些例子:SETI@home是世界上最大的分布式计算项目。
就参与人数而言,它也是中国最著名的项目。
它通过使用联网计算机下载分析射电望远镜接收到的信号的程序来寻找外星生命的迹象。
尽管中国在分布式计算方面取得了进步,中国的国际排名从第29位上升到第24位,但中国用户仍然只完成了日本用户完成的工作的十分之一,而日本这个高度发达的国家的互联网用户数量还不到中国的。
看来,提高网民素质、加大科普普及力度也非常重要。
印度和一些中东国家也存在类似问题,而中欧国家在这方面显然做得更好。
多个独联体国家完成的数据量已超过俄罗斯联邦的总和。
Folding@home是一个分布式计算项目,研究蛋白质折叠、误解、聚集以及由它们引起的相关疾病。
它利用网络计算和大量的分布式计算能力来模拟蛋白质折叠过程,指导一系列由折叠引起的疾病的研究。
中国参与该项目的人数正在不断增加。
截至2011年3月末,中国3213团队用户数达3025人,活跃用户约190人。
参与该项目:气候预测项目使用最新的气候预测模型在家庭、学校和办公室的计算机上进行计算。
这些计算的结果将形成世界上最大的天气预报模型。
气候正在变化,应对气候变化的行动是一个重要的全球话题。
这将影响人类的农业生产、水资源、生态系统、能源需求、保险费用等与人类密切相关的诸多方面。
有固体的科学证据表明,未来几个世纪地球可能会变暖,但无法估计变化有多大。
如果您参与其中,这将有助于为21世纪的气候科学预测提供信息。
中国已经拥有很多计算机,其中许多具有极其先进的性能。
他们中的大多数人只是打字和播放幻灯片。
这不能不说是资源的浪费。
从另一个角度来看,也不难发现发达国家与发展中国家之间的差距。
将这种现象称为数字鸿沟。
另一种现象同样令人痛心。
所有分布式计算项目都是由发达国家发起的,例如美国、德国、英国、日本等,这方面也加深了科学差距。
斯坦福大学化学系教授GorhamRichardChelman表示,分布式计算将加速整个人类的科学进程。
科学家可以完成他们以前从未想过完成的计算任务,或者需要几十年或几个世纪才能完成的计算任务。
确实如此,但这种计算在一定程度上助长了发达国家的科学垄断。
中国相关部门也开始认识到分布式计算的重要性,一些大学教授和科学家也开始深入研究分布式计算科学,比如中科院的CAS@HOME和清华大学的“清水工程”大学。
分布式计算的意义格局(一)分布式计算与人类由于现代人类学科种类繁多,涉及面广,分类细致。
今天的每一门学科似乎都需要大量的计算。
天文学研究组织需要计算机来分析空间脉冲和恒星运动;生物学家需要计算机来模拟蛋白质折叠过程;药理学家希望开发药物来战胜艾滋病或非典。
;数学家想要计算最大的素数和更准确的圆周率值;经济学家希望利用计算机综合考虑数以万计的因素来分析计算某个企业/城市/国家的发展方向,以实现宏观调控。
可见,未来的人类科学,任何时候都离不开计算。
分布式计算以其独特的优势——廉价、高效,越来越受到社会的关注。
(2)分布式计算就目前的计算格局而言,全球大约有一百种分布式计算。
这些计算大多数彼此无关,独立管理,并使用自己的一套软件。
这种相互隔离的分布式计算模式不利于发展需求。
例如,一个生物研究机构需要使用世界各地志愿者的计算机来模拟蛋白质折叠过程。
那个生物研究机构没有分布式计算方面的专业人员,而且社会上也没有一家公司可以提供这样的服务,他们不得不花费大量的精力开发分布式计算的服务器和客户端。
这样,本来可以用于研究生物体的时间就被用在了其他地方。
刚才提到的生物研究机构就是美国斯坦福大学的PANDE小组。
(3)BOINC统一大局。
为了改变这种混乱、碎片化的体系,加州大学伯克利分校(UCBerkeley)首先提出了建立BOINC的想法。
BOINC的中文全称是伯克利网络计算开放基础设施,可以连接许多不同的分布式计算项目进行统一管理。
并统一分配计算机资源(例如,如果你对研究艾滋病药物和探索外星文明感兴趣,可以同时选择两项运行并设定优先级)。
统一管理统计评分系统(无论你在做哪个项目,只要你在CPU上投入的时间长,你就会得到高分)。
如此统一的管理,确实为PANDE集团这样的科研机构提供了便利!BOINC已经成熟,多个项目已经在BOINC平台上成功运行,如SETI@home、LHC@home等。
分布式计算安全对于用户来说,在加入任何项目之前,必须确保可以信任该项目的开发者项目,主要涉及两个方面:(1)计算机上的私有数据以及你从项目方下载的计算程序,它运行在本地机器上,可以访问网络。
因此,只有可靠的项目方才能确保您计算机上的隐私数据不会被恶意删除、修改等。
(2)个人计算机的使用寿命。
虽然分布式计算的计算程序一般都以最低优先级运行,不会影响你的日常使用,但是当计算程序满负荷运行时,仍然会给计算机的各个组件带来一定的压力。
详细了解分布式计算对计算机软件和硬件的影响。
对于项目方来说,毕竟参与分布式计算的志愿者并不是项目方自己的人员,并不都是值得信赖的。
因此,必须引入一定的冗余计算机制,防止计算错误、恶意作弊等。