热点推荐
ZOL首页 > CPU频道 > CPU评测 > 技术讲堂 > 别浪费你的电脑 CPU/GPU为抗癌伸把手

别浪费你的电脑 CPU/GPU为抗癌伸把手


CBSi中国·ZOL 作者:中关村在线 濮元恺(约稿) 责任编辑:李鹏飞 【原创】 2009年03月07日 06:00 评论
回到顶部阅读

分布式计算应用领域广泛

志愿者分布式计算在中国

  写在前面:当我们享受繁华互联网海量信息时,当我们感叹互联网产业高速发展时,一些数据正在反应我们身边的巨变:

  据CNNIC第23次中国互联网络发展状况统计报告,截止到2008年12月31日,中国的网民规模已经达到了2.98亿人,较2007年增长41.9%,互联网普及率达到22.6%,略高于全球平均水平21.9%。

  截止2009年2月18日,全世界志愿者为著名的分布式计算项目Folding@home贡献了超过5PFlops运算能力,大约是全球TOP500最快计算机第一名IBM Roadrunner的5倍。
 
  当我们为自己配置一台价格不菲的电脑,发现电脑中的双核或多核CPU以及显卡资源经常不能被充分利用时,我们是否想到自己可以将这些闲置部分的资源通过互联网贡献给更多需要它们的人?我们是否知道,下载一个计算软件,通过互联网,自己的电脑可以与全世界的分布式计算志愿者电脑联合,变身为一台计算能力极其强大的超级计算机?


别浪费你的电脑 CPU/GPU为抗癌伸把手
分布式计算令普通台式机转变为超级计算机

  如何才能参与分布式计算,下载一个软件就可以吗?

  我们把运算结果交给了谁,这些机构权威可信吗?

  运算结果在哪里能够看得到,在此基础上的研究成果都被及时公开吗?

  我想参与我们自己的分布式计算项目,中国的分布式计算发展情况如何?

  面对众多国内网民对于分布式计算的种种不解和疑惑,我希望在文中把自己参与分布式计算的感受和了解的知识与大家分享,同时也希望更多人能以科学的眼光来看待分布式计算并给予理解和支持。同时中国的分布式计算的发展,不仅依靠我们的程序开发人员,更多地需要依靠志愿者长期稳定的参与和支持。


【每日焦点】DDR3本条崩盘 酷睿E7300竟跌至720元

回到顶部阅读

分布式计算的定义和特点

一、志愿者分布式计算的定义和特点

  志愿者计算(Volunteer Computing)通常是指很多志愿者共同参与一些大型的分布式计算项目。它是一种利用遍布全世界的普通民众的运算资源,让一般志愿者参与并提供计算和存储资源的计算项目。

  分布式计算(Distributed Computing)是计算机科学的一个重要分支,它主要研究如何把一个需要巨大的计算能力才能解决的问题分解成许多小的部分,然后把这些部分再分配给许多志愿者计算机进行处理,最后把这些计算结果综合起来得到最终的结果。通过因特网,志愿者分布式计算将世界各地成千上万位志愿者的计算机的闲置计算能力整合起来,创造了无数奇迹!

  志愿者分布式计算听起来似乎有些神秘,但实际上它们离我们并不远,甚至就在我们身边。目前分布式计算项目已经有很多,涉及到天文学、生命科学、数学、计算机科学等诸多学科,而且许多还是科学研究的前沿领域,或是能引起人们持久兴趣的方面,如地外文明,生命起源等。多数项目,只要你有兴趣,通过下载安装一个很小的客户端程序就可以参与进去。只要你参与的是正规的分布式计算项目,当然可以和研究人员一样平等地获取项目进度和运算结果。


别浪费你的电脑 CPU/GPU为抗癌伸把手
分布式计算

  分布式计算是近年提出的一种新的计算方式。所谓分布式计算就是在两个或多个软件互相共享信息,这些软件既可以在同一台计算机上运行,也可以在通过网络连接起来的多台计算机上运行。比如说我的计算机运算一道题需要很长时间,为了加快速度,我可以把这道题拆分开,让朋友们来帮忙一起运算,最后汇总所有人的结果。这就是一次典型的志愿者分布式计算。而这种运算方式的核心思想就是志愿参与并分享结果。

  分布式计算正在飞速发展和应用,它通过网络连接所有志愿者的电脑,在电脑闲暇时贡献出运算能力,来集中解决世界性难题。你可以自由参与数学、物理、生命科学等等计算项目,你的电脑可以行动起来搜寻外星人、破解数学难题、攻克世界性疑难病症……这些项目通常需要惊人的计算量,由一台计算机计算是不可能完成的。即使现在有了计算能力超强的超级计算机,但是一些科研机构的经费却又十分有限。

  分布式计算就是这样一种倡导自由参与、量力贡献、平等分享的开放性计算方式。开发者用项目的优势特别是公益性,同时借助自己的影响力和权威性来吸引志愿者的参与,同时让每一个参与者知道自己做了什么贡献,这个项目的进展情况如何,现在得出了什么样的运算结果,有的项目在结束后还会公开源代码。由于分布式计算的开放性,所有基于计算结果的研究成果将使全人类受益。
  
  简单说来,志愿者分布式计算就是选择一个你信任并感兴趣的项目,下载一个程序,并在后台运行它,它会自动上传运算的结果。当然你可以加入一些团队,比如加入各项目的Team China中国团队,当然不同国度的团队之间以贡献运算量为标准,进行着激烈竞争。

  如果你觉得这样的理论性的讲解不够生动贴切,难以理解,那就让我们共同探索一些著名的分布式计算项目,更多生动的例子将展现在我们眼前。

回到顶部阅读

著名的分布式计算项目(一)

二、著名的分布式计算项目

1、World Community Grid世界公共网格

  World Community Grid,中文译名为“世界共同体网格计划”或“世界公共网格”。是由IBM公司发起的一项基于因特网的公益性分布式计算项目,开始于2004年11月16日。该项目将联合分布于世界各地的志愿者们提供的计算资源,用于一些能为全人类带来福音的大型科学研究项目。要相信你我点滴的贡献,可以帮助那些在水深火热中的人们,可以改变整个世界。


别浪费你的电脑 CPU/GPU为抗癌伸把手
World Community Grid

  World Community Grid目前已有超过390000名志愿者参与。截至2004年11月,他们贡献了超过167000年的计算时间。目前全球志愿者的计算机上平均提供着 170 TeraFLOPS 的计算能力。随着研究课题的增加,World Community Grid 逐渐发展成为一个医药、生物和环境等各种方面研究类的分布式计算平台。目前在该平台上主要运行六个子项目。

  第一个启动的子项目是“Human Proteome Folding”,中文翻译为“人类蛋白质组折迭”,于2004年11月16日启动,该项目主要用来仿真蛋白质折迭的过程,目的在于指引研究人员对于由蛋白质错误折叠所引起的疾病进行一系列更为深入的研究,目前已进行到第二阶段。

  第二个子项目是“FightAIDS@Home”,于2005年11月21日启动,该项目主旨在于开发能够有效抵抗 HIV 病毒感染的化学药物,或者新的、更有效的治疗方法,以防止艾滋病病毒(HIV)携带者最终患上艾滋病。

  其它正在进行中的子项目还有“Discovering Dengue Drugs–Together”(发现治疗登革热的药物-齐心协力,于2007年8月21日启动)、“Help Conquer Cancer”(征服癌症,于2007年11月6日启动)、“Nutritious Rice for the World”(全球营养水稻,于2008年5月12日启动)、“The Clean Energy Project”(清洁能源计划,于2008年12月5日启动)。

别浪费你的电脑 CPU/GPU为抗癌伸把手
上图为“人类蛋白质组折叠(第二阶段)”研究进程示意图。

  World Community Grid的任务是创建世界上最大的公共计算网格,以执行能够造福人类的项目。该平台已经开发了技术基础结构,该结构可作为用于科学研究的网格的基础。我们的成功依靠大家共同贡献各自空闲的计算机时间,让世界变得更美好。

  主导该项目的是IBM公司,它为 World Community Grid基础结构的构建提供了软件,硬件、技术服务和专业知识,同时还提供了免费的托管、维护和支持。

  World Community Grid仅将这项技术用于公共非盈利组织的人道主义研究,如果没有公共网格,这些研究就会因高昂的计算机基础结构成本而无法完成。World Community Grid做出申明:作为我们对促进人类福祉的承诺,所有的研究结果都将公开,以供全球的研究团体共享。

回到顶部阅读

著名的分布式计算项目(二)

2、SETI@Home

  SETI@home是一个通过互联网利用家用个人计算机处理天文数据的分布式计算项目,是全世界影响力最大的一个分布式计算项目,也是中国参与人数最广,贡献力量最多的一个分布式计算项目。


别浪费你的电脑 CPU/GPU为抗癌伸把手

  “SETI”是英文:Search for Extraterrestrial Intelligence(搜寻外星智能)的缩写。该项目试图通过分析Arecibo射电望远镜采集的无线电信号,搜寻能够证实外星智能生物存在的证据。该项目由美国加州大学伯克利分校的空间科学实验室主办。

别浪费你的电脑 CPU/GPU为抗癌伸把手
图为Arecibo望远镜,SETI@home的耳朵。

  SETI@home是目前因特网上参加人数最多的分布式计算项目,毕竟伴着《星球大战》成长起来的一代对是否存在外星人充满了恒久的好奇。这个项目由美国加州大学伯克利分校“搜寻地球外智能”(SETI)研究小组发起,旨在利用因特网中不计其数的计算机的闲置时间进行SETI计算,以期从海量的信号中搜寻到地外文明的蛛丝马迹。

  首先由位于波多黎哥群山之中的巨型射电望远镜Arecibo收集地外信号,然后将每天约35 GB的数据传送到SETI@home项目管理中心。SETI@home管理中心将数据进行分解处理,划分成合适的大小计算包,然后通过因特网将它们分发到全球成千上万志愿者的电脑中。

别浪费你的电脑 CPU/GPU为抗癌伸把手
SETI@home分布式计算项目

  志愿者电脑在空闲时将自动启动SETI@home客户端程序进行数据处理。当一个信号单元分析完毕,客户端程序将有价值的信号送回SETI@home项目管理中心并自动下载新的数据计算包。如果志愿者送回的处理结果经确认属重大发现,那么志愿者将同SETI @ home项目组共同分享“发现者”的荣誉。

回到顶部阅读

著名的分布式计算项目(三)

3、Folding@home

  Folding@home是一个研究蛋白质折叠,误折,聚合及由此引起的相关疾病的分布式计算项目。我们使用联网式的计算方式和大量的分布式计算能力来模拟蛋白质折叠的过程,并指引我们近期对由折叠引起的疾病的一系列研究,找到相关疾病的发病原因和治疗方法。

  Folding@home能了解蛋白质折叠、误折以及相关的疾病。目前进行中的研究有:癌症、阿兹海默症(老年失智症)、亨廷顿病、成骨不全症、帕金森氏症、核糖体与抗生素。

  相关知识:什么是蛋白质?它们是怎样折叠的呢?


别浪费你的电脑 CPU/GPU为抗癌伸把手

  蛋白质是一个生物体系的网络基础,它们是一个个纳米级计算机。在蛋白质实现它的生物功能之前,它们会把自己装配起来,或者说是折叠;虽然蛋白质折叠对所有的生物来说是最基本的和最明确的事实,但它的折叠过程对人类而言仍然是个未解之谜。此外,当蛋白质没有正确的折叠(误折)无疑会产生严重的后果,包括许多知名的疾病,比如癌症、阿兹海默症(Alzheimer's),疯牛病(Mad Cow, BSE),可传播性海绵状脑病(CJD),肌萎缩性脊髓侧索硬化症(ALS),还有帕金森氏症(Parkinson's)等。

  Folding@home可以说是一个非常基础性的研究项目,也是一个纯粹的公益性生命科学研究项目。它以分子动力学为原理,用大量的运算来模拟蛋白质的折叠过程,从而为攻克医学界重大疑难病症而做出努力。

  值得一提的是在2006年,ATI的X1000系列表现出了相当惊人的浮点运算能力,并拥有良好的GPGPU架构。ATI在2006年8月宣布将联手斯坦福大学在其Folding@Home项目中提供对基于ATI Radeon X1900 GPU通用计算的支持。从此开始,用高性能显卡来进行通用计算走入了硬件爱好者的视线,GPU通用计算再也不是什么神奇高深的东西,通过参与Folding@Home,你可以体会到它就在我们身边。

  Folding@home项目的核心原理在于求解任务目标分子中每一个原子在边界条件限制下由肽键和长程力等作用所导致的运动方程,进而达到实现模拟任务目标分子折叠运动的目的。每一个原子背后都附庸这若干个方程,每一个方程都可以转换成一组简单的向量指令。同时由于长程力的影响,条件分支也随处可见,Folding@home在GPU使用量上也要大于图形编程。因此这个项目完全可以用于显卡稳定性的检测,我们已经发现了很多品牌机由于电源供电能力有限或显卡做工问题,在运算中途发生错误从而被迫退出。

  PS3游戏机由于使用了浮点运算能力极高的CELL处理器,也加入了Folding@home,玩家只要打开相关选项,即可成为该项目的重要贡献者。NVIDIA于08年6月宣布旗下基于G80及以上核心的显卡产品都支持该项目的通用计算,更是对分布式计算的重要贡献。

  目前Folding@Home已经成为全世界最有影响力和公信力的项目,同时是各大厂商和机构鼎力支持的项目,当然它毫无疑问地拥有最广大的志愿者团队——截止2009年2月26日共计1,195,744人参与该项目,最近的统计显示志愿者贡献的总运算能力已经达到了5PFlops,远超现在全世界最快的超级计算机IBM Roadrunner(最高性能1.026PFlops)。该项目在中国拥有约2000多名参与者,其中最强大的China Folding@Home Power(Folding@Home中国力量,团队编号3213)团队拥有1863人,最近活跃用户217人,目前贡献计算量排名世界第83位,团队整体运算能力约为25TFLOPS。

  志愿者们通过坚持不懈的运算,让全世界很多玩家知道了China Folding@Home Power团队,向全世界展示着中国玩家的分布式计算力量。目前在中国团队,显卡运算的贡献比例比重已经超过90%,GPU用自己特殊的架构完成了不可思议的工作量,也证明了GPU架构在大规模多线程运算中的优势地位。

  在文章发稿前,我们获得了两条关于显卡运行Folding@home的最新消息:

  首先是使用NVIDIA显卡搭配180.70或者181.20驱动运算时,几乎完全不占用CPU资源,CUDA运算架构的优势体现无疑,而进行高密度运算不占用CPU在以前是不敢想象的。

  同时在ATI方面,自催化剂8.12开始大大提升了显卡计算FAH的效率,而最新的催化剂9.2的更新说明中明确表示,对于使用多显卡Crossfire系统用户来说,可以在每一颗GPU上单独运行一个Folding@home客户端,计算效率翻一番甚至两番。而在以前志愿者们不得不放弃组建交火系统,多显卡运行Folding@home时开启多个客户端也比较麻烦。


回到顶部阅读

Pi Segment圆周率计算

三、打破世界记录的中国分布式计算项目——Pi Segment圆周率计算

  一说起圆周率π,相信很多人能马上说出“3.14”这个数字。没错,3.14只不过是一个近似值,实际上π是一个无限不循环的无理数。回顾历史,人类对π的认识过程,反映了数学和计算技术发展情形的一个侧面,π的研究,在一定程度上反映这个地区或时代的数学水平。

  Pi Segment计算对象是圆周率Pi,而他计算的方法是将整个计算任务分割成一个个小的片段,由全世界各地的参与者共同完成,故得名Pi Segment。这是由中国民间发起的分布式计算项目,旨在宣传分布式计算,倡导充分利用计算资源,挑战新的世界纪录。


别浪费你的电脑 CPU/GPU为抗癌伸把手
ChinaPI更名为PI Segment

  2004年9月1日, ChinaPI(现更名为PI Segment)基础架构的构建完成,顺利通过了内部调试,并于9月3日举行公开测试,在众多分布式计算志愿者的参与下,顺利地攻克了关于计算核心精度等的四个难题,迈出了十分重要的第一步。经过一年的分析和修整,ChinaPI V1核心测试于2005年7月30日推出,这次的测试程序是基于一个分布式的测试平台,使参与测试者操作起来更加方便,并解决了诸如客户端和服务器端传输不畅的问题。

  2006年2月8日,更名之后第一个PI Segment客户端测试版正式发放,这次同样得到了广大爱好者的积极参与。终于在2007年12月2日,PI Segment完美结束。经过反复核实,项目组宣布圆周率小数点后第2,000,000,000,000,000位(二进制)是0,最终运算结果达到67MB,用TXT文档保存,并在项目网站上提供下载。这是一个新的世界纪录,并且保持到今天!

  Pi Segment的主要目的是在中国宣传分布式计算,提高计算资源的使用率。中国从很早就开始了对于分布式计算的研究,并取得了很多成果,比如国家网格。但是,这些项目只是利用了各大高校和科研机构的计算资源,更普通民众无法参与其中。中国拥有巨大的运算资源,然而至今仍没有一个可供普通民众参与的正式分布式计算项目,这显然是对资源的浪费。Pi Segment的出现打破了这种局面,同时通过项目自身的宣传,让更多的民众了解并参与。

  该项目官方网站为:http://www.pisegment.net/,目前该项目已结束。在运算完成后,项目结果和整个程序的源代码都在网站上进行了公开。在项目统计资料中,我们可以看到全世界的1000多人参与了这个项目的运算,他们分布在50多个国家中,其中美国的团队对项目的快速完成做出了大量贡献,他们共上传了779074个任务包,排名第一。中国队上传了258826个任务包,排名第二,加拿大、英国等国家紧随其后。全世界玩家的无私奉献让中国主导的PI Segment迅速结束,获得丰硕成果。

  中国民间主导的分布式计算程序并没有停止发展。Pi Segment结束后仅一年,优美树验证项目启动,该项目官方网站为http://www.projectgtv.cn/,这同样是一个数学类项目。该项目旨在通过志愿分布式计算的方式对优美树猜想进行验证。优美树猜想是图论中一个重要但悬而未决的猜想,它猜想所有的树都是优美的。通过这个项目的计算,我们可以对优美树猜想进行验证,试图寻找反例,同时获得优美树的一些统计性质,帮助数学家更好的研究优美树猜想。

  所谓优美树猜想,其实就是如下命题:所有树都是优美的。目前为止得到最普遍的结论就是由P.HrnČiar和A.Haviar在2001年证明的,他们证明了所有直径等于5的树都是优美的。再加上之前的结果,我们可以知道所有直径小于等于5的树都是优美的。在这里,直径的定义就是树的任意两个顶点间的最大距离,也就是说在树上任意取两个顶点,从一个顶点沿着边走到另一个顶点至少经过的边的数目。树的数目是随着顶点的数目指数增长的,大约是O(2.6687^n)。这种增长是非常快速的,所以需要大量的计算资源来推进优美树猜想验证。


回到顶部阅读

参与分布式计算的几点误解与思考

四、参与分布式计算的几点误解与思考

1、志愿者分布式计算完全是浪费能源

  有很多未参与运算的朋友们会抱有这样或类似的想法,因为相比超级计算机,我们的PC能贡献的力量微不足道。特别是一些运算量巨大的项目比如,即使是参与者在运算了几个月后没有任何重大发现,也会发出这样的感慨。一些有争议的项目比如SETI@home更是如此,经常能看到有人争辩说即使是搜寻到了地外文明,人类又能做些什么,有什么意义。

  我建议大家要从另外一个角度分析,比如说一台每天开机12个小时的电脑,其中CPU和GPU被真正完全利用的时间可能不足1个小时甚至几分钟,其余时间都是在做负荷很低的运算操作,与其让剩下的CPU或GPU资源在那里“等待”,不如让它们发挥功效,在闲暇时进行运算。

  有很多人说分布式计算中硬件工作产生的热量、消耗的电能带来的排放是对环境和生命有害的,但是在这里还是要提醒大家,分布式计算利用的是电脑的闲置运算能力,CPU/GPU闲暇时同样在制造排放和辐射,这是你我不可避免的。在志愿参与分布式计算时请提醒自己:计算是因为开机,而开机不是为了计算,请节约能源。特别是生命科学类项目中,我们坚信每增加一台电脑参与运算,每多运算一分钟,我们离成功就越近,有可能挽救无数在死亡线上挣扎的生命。

  同时现在的一些著名分布式计算项目已经取得了非常显著的成绩。如Folding@home项目,在最新的研究进展中包含了很多令人兴奋的结果,比如成功模拟了HIV(AIDS艾滋病病毒)整合酶的DNA粘合结构域的展开。HIV使用蛋白质把它的遗传代码插入我们的DNA中。HIV 整合酶的 DNA 粘合领域是HIV用来锁定我们的DNA 的蛋白质,了解其展开过程将让我们从本质上揭开HIV病毒侵蚀细胞的核心过程。

2、我无私地运算,项目方却将这些结果封闭,甚至用来卖钱

  可以肯定地说,如果你参加的是一个正规机构主导的,同时在全球具有广泛认可的项目,就不会出现这种情况。任何分布式计算就是借助志愿者的力量来完成积累,因此任何项目都承诺将结果完全无隐瞒地分享给公众,如果不公开运算结果,那有谁会参与运算?有谁会坚持不懈地支持?

  对一些大型科研机构主导的有一定历史的分布式计算项目,我们在仔细了解后确认放心即可参与。同时要看它的科研实力和结果披露情况,这一切都写在项目网站上,参与者仔细分析即可获得非常明确和公正的判断。对于一些商业实体提出的用于其他目的的分布式计算项目,如果运算结果为服务于自己的商业活动并且带对参与者有大量物质奖励,则需要仔细审视。

  同时我们可以思考这样一个简单的道理,计算机发展速度飞快,运算能力提升显著,分布式计算项目也同样很多,而且这些项目都是基础性科研,短期内不会有非常重大的科研成果。一方面随着时间的流逝,这些基础性的东西早晚都会有人做出来。另一方面基础性研究不会直接导致实际作用,所以将基础性研究结果放在自己手里是非常愚蠢的做法,不但没有任何价值,只能慢慢烂掉,反而会招致舆论和参与者一致反对而最终走向死亡。

3、分布式计算安全吗?我能获得相关的运算结果吗?我参与运算能得到证明吗?

  问题的答案都是肯定的,参与者当然可以实时了解项目的进展情况。同时我们应该参与正规地分布式计算项目,而且要从正规的网站,如官方网站或权威性的专业网站上下载客户端程序,这样下载的程序才更可靠。

  这里推荐大家去中国分布式计算总站了解更多信息:http://www.equn.com/,这是中国分布式计算方面著名的科普性质的非盈利站点。它由一群乐于奉献、热心于网络公益性分布式计算项目的爱好者共同创立。同时它和国外的多所著名大学及权威研究机构建立有良好的合作关系,是国外绝大多数分布式计算项目的主持机构指定的中国唯一官方网站。

  原始的运算结果是一些数量相当庞大的数据,往往都经过了加密,即使获取后一般人也无法看懂。但是项目的主持方还是会把项目的细节进程和相关论文公开在网站上,供所有人查阅。这些结果一般在项目网站的“研究”或“成果”页面上公布,任何人可以自由查阅。同时一些分布式计算在完成后,还会公开源代码。正是这些信息的及时披露,让更多人有兴趣参与其中。

回到顶部阅读

新手该如何入门

 4、诸多的志愿者分布式计算项目拥有统一的管理平台吗?

  就目前来看,全球的各种分布式计算已有约百种,这些计算大多互无联系、独立管理、独立使用自己的一套软件。目前的这种分布式计算互相割据的格局很不利于发展的需要。为了改变这种杂乱无章的割据,美国加州大学伯克利分校(UC Berkeley)首先建立了BOINC平台。


别浪费你的电脑 CPU/GPU为抗癌伸把手
BOINC平台

  BOINC的中文全称是伯克利开放式网络计算平台(Berkeley Open Infrastructure for Network Computing),他能够把许多不同的分布式计算项目联系起来统一管理。并对计算机资源进行统一分配。BOINC目前已经成熟,多个项目已经成功运行于BOINC平台之上,如SETI@home、LHC@home、Rosetta@Home 、World Community Grid世界公共网格等。当然也有自己独立运行的软件,如Folding@home目前还拥有自己独立的客户端和管理系统。

5、新手该如何入门?

  分布式计算项目的种类非常多,相当一部分项目的参加和使用方式各异,幸运的是从2004年开始,由 SETI@home 项目组推出的 BOINC 平台得到了日益广泛的使用,大部分在其后产生的新项目和少部分先其产生的老项目都建立在或迁移到了BOINC平台上,这就大大减轻了志愿者参加多个分布式计算项目的难度。

  无论该项目是否属于BOINC平台,对于想参与的新手而言以下几个步骤是必须的:首先是下载软件,推荐大家到正规的分布式计算网站,或者项目方官方网站下载客户端程序。推荐最新的客户端程序,同时要根据自己电脑的硬件构成和操作系统来选择合适的客户端。当然BOINC平台的用户不用考虑上述问题,下载最新的客户端即可。

  不属于BOINC平台的客户端,在安装后需要在“设置(Configure)”选项中填入用户名,这就是以后你参与计算的用户名;同时填入团队,一般填写团队代码即可,这里填入的代码即表示你以后参与的团队,你的个人积分都将统计在团队总积分中。BOINC平台因为包含了众多项目,所以要选择项目,然后注册新用户。注册完成后,客户端将与项目的服务端进行通讯,下载任务包开始运算。BOINC平台目前已经完全汉化,这大大降低了新手的参与门槛。

  成为分布式计算志愿者就这么简单。加入项目后,任务单元的下载、计算和上传都是自动完成的,一般都不需要用户手动干预,完全可以不必理会它。分布式计算客户端的优先级都很低,表面上CPU是被客户端程序100%占用,实际上在其他程序需要的时候,分布式计算会让出资源。而且比较成熟的客户端都拥有资源使用限制,你可以规定分布式计算程序的CPU占用率,硬盘内存占用量等资源占用选项。


回到顶部阅读

国内分布式计算的发展状况

五、国内分布式计算的参与程度和发展状况

  通过上文讲解,我们已经明白了许多原来独立发展的项目现在都归于BOINC平台,那么BOINC的统计数据自然就拥有了权威性。下面让我们主要通过BOINC统计数据来了解国内分布式计算的参与程度和发展状况。


别浪费你的电脑 CPU/GPU为抗癌伸把手
图为BOINC平台“国家和地区排名”,为方便阅读有删减。

  中国目前在全世界有统计的249个国家和地区中排名第23位,总积分578,726,602分,中国大约拥有分布式计算志愿者28144名,目前活跃用户约10000人。分布式计算的推广工作在中国已经进行了很多年,但是反映在数据方面还是不太理想。由于巨大的人口基数,我们的“积分/人口”排名几乎是全世界最后几名。在一个网民最多接近3亿的国家中,我们只有10000人在支持着分布式计算项目的运行。

  在分布式计算的普及方面,我觉得主要是推广工作还要加大力度。有很多热心的参与者抱怨,在向自己的同学好友推广分布式计算过程中,经常被问到:“这些项目得出了结论和成果之后,最先获利的是哪个国家?傻子才去算这东西!”言外之意就是,这是发达国家发起的项目,就算有成果了也是人家的。在一些论坛的谈论中也可以看到,少数人甚至认为这是在用自己国家的能源为别人奉献,一些论坛管理人员也会将分布式计算误认为是广告而删帖。也有人因此而感慨:在这个国度里,科学精神如荒漠般贫瘠。而我觉得主要原因还是我们的国民对志愿者分布式计算了解太少。

  我始终认为爱国心和荣誉感应该体现在为祖国发展而奋发努力,为国家科技和教育进步而自豪,而不是简单地打嘴仗。同时作为一名分布式计算的参与者,我希望让更多人用科学的态度,用理解和支持的眼光来看待志愿者分布式计算的发展。希望在全世界体现国家教育实力和科普程度的地方能看到更多五星红旗,而公众对分布式计算的参与和了解,在一定程度上是一个国家科普程度的重要体现。

  Pi Segment圆周率计算项目的开发者JUST告诉我们,他认为项目本身没有国籍的。虽然大部分项目都是由国外的大学发起的,但研发团队成员可能来自世界各地。客观地讲,这样一个自愿参与的活动,我们努力做好推广工作,让更多人了解自己的电脑可以发挥更强大的功效就是最实际的目标。当大家都了解分布式计算的细节和目的后,自然不会再出现类似问题,强烈的民族主义思想和阴谋论思维也会随着对分布式计算工作原理的了解而消除。

别浪费你的电脑 CPU/GPU为抗癌伸把手
中国分布式计算运算能力数据

  数据来自第三方统计机构Boincstats.com。如图,2004年8月到2009年2月间,中国的分布式计算运算能力出现了非常可喜的快速增长。这些数据表明了中国无论是参与人数还是参与力度都出现了大幅度提升。我们的公众开始对志愿者分布式计算模式产生兴趣。

回到顶部阅读

运算资源分布在哪些项目中

  接下来让我们看看中国在哪些项目中贡献最大,我们的运算资源分布在哪些项目中。看看我们的志愿者更喜欢哪一类运算项目。


别浪费你的电脑 CPU/GPU为抗癌伸把手
中国的贡献

  数据来自第三方统计机构Boincstats.com。我们看到“SETI@home搜寻地外文明”是参与人数最多的一个项目,中国在这方面的贡献超过了我们所有运算能力的50%,SETI@home属于天文类项目。该项目的热情参与度和项目的历史与大力推广是分不开的,当然这也说明我们的志愿者们充满美妙地幻想和浪漫主义气息。

  著名的物理类项目“Einstein@Home寻找引力波”紧随其后,我们将总运算能力的18%贡献给了该项目,Einstein@Home 利用分布在世界各处的计算机来分析处理引力探测器收集到的数据。根据阿尔伯特•爱因斯坦的理论,人类生活在一个充满引力波的宇宙之中。他认为那些重量级天体,比如黑洞和高密度星体的运动产生了改变时空的引力波。现在,我们有机会去发现这些引力波。

  LHC@home同样是非常经典的物理类研究项目,该项目在中国同样获得了热心参与,但由于其专业度较高,支持者数量偏少,但因为该项目的重要性,我们这里附带讲解。大型强子对撞机(LHC)是一台粒子加速器,它建造在 CERN(欧洲核子研究中心),该研究机构是目前世界上最大的物理实验室。

别浪费你的电脑 CPU/GPU为抗癌伸把手
大型强子对撞机示意图

  图片是已建成的大型强子对撞机示意图。LHC在2007年已正式启动,将会代替LEP(大型正负电子对撞机)。它将坐落在地下100m 一条 27km 长的隧道里。它能将两束质子加速到 7 特电子伏的能量,然后发生碰撞。您一定会问:物理学家们为什么需要粒子加速器?因为科学家们已经发现宇宙中所有的东西都是由基本粒子组成的。这些物质被一些基本的力量所支配。因此粒子加速器也被称为精细的显微镜。

  “World Community Grid世界公共网格”排名第三,该项目上文已经介绍过,大多数是生命科学类基础研究,也包括新能源等研究方向。

  “Climateprediction.net气候变化预测”排名第四,该项目研究气候的变化以及我们的反应,是全球性的重要问题,影响食物生产,水源,生态系统,能源需求等等。Climateprediction.net工程是把最新的气候预测模型通过家庭、学校、办公室的计算机来进行计算。这些计算完成的结果将会组成世界最大的气象预测模型。

  接下来则是“Rosetta@home 蛋白质结构预测与模拟”项目,是典型的生命科学类项目。该项目是一项利用已联网的计算机来准确预测和设计蛋白质结构及聚合物的分布式计算项目。我们的目的很明确,那就是要寻找准确预测和设计蛋白质结构及聚合物的方法。这项工作将有助于研究员们寻找人类对付一些重大疾病的途径。

  总体看来,天文地理、生命科学、物理化学等项目上集结了大量运算力量,同时数学类项目也有不少参与者。可以说志愿者分布式计算已经将参与者和整个世界联系在一起,我们能够体会到,志愿者在电脑后台默默运行的程序,为世界的科学前进做出了不可磨灭的贡献。


回到顶部阅读

特殊架构运算器对分布式计算影响

六、特殊架构运算器对分布式计算的影响

  只有CPU能够运算吗?如果在几年前答案当然是肯定的,因为没有别的运算器具备强大的可编程性,只有广泛通用的CPU具备这种能力。而现在,随着科技发展日新月异,已经出现了很多以前我们不敢想象的情况。

  2005年,著名的PS3游戏机专用高性能处理器CELL发布了,全世界的目光立刻投向了它!Cell是以 IBM 所研发的 64 位元 Power 微处理器为核心,结合8个独立的浮点数运算单元所构成的多核心处理器。它共有9个CPU内核,一个Power架构RISC型64位CPU内核“PPE”和8个浮点处理用的32位8路SIMD型CPU内核“SPE”(Synergistic Processing Element)。SPE各个之间的最大数据传输带宽高达192GB/s。1个SPE的最大单精度浮点运算速度为32GFLOPS。8个SPE合计为256GFLOPS。


别浪费你的电脑 CPU/GPU为抗癌伸把手

  2006年1月24日,ATI正式发布新一代的高端产品——RADEON X1900系列。作为06年推出的新高端产品,RADEON X1900不仅拥有高时钟频率的特点,而且还在架构上作了大刀阔斧的改进,性能获得显著提升。RADEON X1900采用3:1的Pixel Shader:TMU比率,一共48个Pixel Shader,这项改进使得该GPU高频版的理论浮点运算能力达到了426.4 GFLOPS,而一颗主频为3GHz的Core2 Duo处理器的理论浮点计算速度仅有48GFLOPS。

别浪费你的电脑 CPU/GPU为抗癌伸把手
ATI发布的RADEON X1900显卡

  在豪华的硬件规格背后,这两款产品都蕴藏这更加令人兴奋的能力,那就是运算单元的可编程性。这意味着它们已经远远超出了娱乐类硬件产品的范围,而是一款强大的浮点运算器。核心中周边存储资源相对CPU比较缺乏,同时没有流水线概念,也就几乎没有分支预测和乱序执行能力,它们不属于CISC架构,意味着几乎没有庞大的前端解码等逻辑电路。但是这些架构拥有庞大的运算单元,这是CPU永远不可比拟的。这些架构的运算器件近年来的飞速发展超越了摩尔定律,也为高密度的科学运算带来了不可想象的力量。

  2006年9月底,ATI宣布了通用计算GPGPU架构,并得到了斯坦福大学Folding@Home项目的大力支持,加入了人类健康研究。2007年3月22日,PS3正式加入史丹佛大学分布式运算研究计划,至今已有超过百万名 PS3 玩家注册参与。

别浪费你的电脑 CPU/GPU为抗癌伸把手
分子结构

  Folding@home在自身定位明确、成功发展的基础下,通过斯坦福大学的大力推广,已经获得了全世界广泛认同。而近期PS3和GPU的参与更是将Folding@home的运算能力推向高峰。值得一提的是NVIDIA在2008年6月果断宣布加入该项目,至今已经为该项目提供了超过2 PFlops运算能力。

别浪费你的电脑 CPU/GPU为抗癌伸把手
显卡的运算能力

  显卡的用处已经远远超出运行游戏,我们买到的显卡其实是一块高性能加速器。特别是现在NVIDIA和AMD的显卡产品都体现出了极高的浮点运算能力,双精度浮点运算中的衰减也越来越小。举例说,一款中端显卡一天24小时可以计算10个左右的大分子蛋白质折叠,而一款酷睿2双核E7200处理器在24小时内完成一个小分子包运算任务都非常困难。CPU和GPU在高密度多线程浮点运算中体现出的性耗比差异,相信大家已经非常明白。

  该项目在中国同样有一群忠实的志愿者,他们大多数驻扎在中国分布式总站论坛,大多数用户使用自己的PC参与这项运算活动。在GPU客户端广泛普及后,有人使用HD4870、GTX280等高端显卡,而更多地则是9600GSO、3850等中低端显卡和普通CPU。在这里不求贡献多少,只要有一颗奉献的心就能把大家联在一起。

  在2008年12月,另外一个重要的分布式项目SETI@home宣布,在多次测试和修正后,正式利用CUDA平台支持显卡计算。GPU通用计算的应用范围再次得到拓展,但这次不是在深奥的科研领域,而是广泛普及于公众的分布式计算。正式版使用中端显卡即可获得2~10倍于CPU的速度,项目方希望有支持CUDA显卡的志愿者都能使用新的高性能客户端来参与。可以说GPU的参与使科研工作效果获得了极大提升。


回到顶部阅读

我们对志愿者分布式计算的期待和展望

七、我们对志愿者分布式计算的期待和展望

  面对日益突出的计算资源“短缺”问题,分布式计算专家韦伯教授轻松地布道,“信息的恶性增长使各个领域都布满了吞噬巨大计算力的‘黑洞’,但这并不可怕,真正可怕的是我们总是想用为数不多的几块巨石而不是取之不尽的泥土去填平它。”更可怕的是超级计算机造价昂贵,性能提升缓慢……按照目前速度发展下去,我们可以肯定地说只有分布式计算才是未来。

  从理论上说,分布式计算所蕴藏的计算能力是无止境的,因为它可以通过网络将世界任意角落的计算机囊括进来,只要发起者有足够的号召力或强制力就成。而志愿者分布式计算非常形象的口号也是模仿《共产主义宣言》——“全世界计算机,联合起来!”

  志愿者分布式计算正在创造着奇迹,在第42届夏威夷国际系统科学协商会上,《Celebrating Diversity in Volunteer Computing》一文获得最佳论文奖。文中针对 World Community Grid和 BOINC 这两个基础的中间件系统讨论资源的多样性。据文章统计,仅BOINC平台上,目前已有50个项目和580000位志愿者的计算机提供着平均 1.2 PetaFLOPS 的计算能力。可以说这些巨型机已经完全被淹没在人民的海洋里,这就是志愿者分布式计算的力量。

  在中国,志愿者分布式计算的普及工作已经开展了很多年,比较快速的发展在最近几年。依托http://www.equn.com/中国分布式计算总站,志愿者们建立起密切的联系,共同积极参与,分享经验。而这项公益行动的推广力度不够始终是困扰大家的难题,我们有很多硬件玩家对分布式计算还不了解甚至从未听说。

  正如中国主导的分布式计算项目Pi Segment圆周率计算项目所描述:计算能力是一种资源。而如何安全高效地利用这种资源,是摆在我们面前最大的难题。我个人的观点是为了适应更多网友的价值观,首先应该抓紧开发我们自己主导的分布式计算项目,项目要立足生活,直观明了。同时加大推广力度,让更多尚未成为志愿者的人了学分布式计算,最终做出理性的选择。

  我们拥有全球最广泛的网民,却在志愿者分布式计算发展方面步履维艰。分布式计算的客户端程序在今天看来已经非常成熟和简单,它让科研不再高深,反而平易近人。我们的媒体因此更是肩负重大的责任,在更多的文章中提及分布式计算,引导大家了解项目细节,改变以往的认识。其实写一篇文章对于电脑前的媒体工作者轻而易举,而一篇有价值的文章却可以影响更多人。

  我们的政府和科研机构同样应该引起重视,因为合理安全地利用志愿者提供的运算资源是一个重大课题,开发好的运算项目,服务于经济建设同时推动科技发展,何乐而不为。在我们的国家网格日臻完善时,大家共同行动起来开发和使用民间巨大的计算资源,志愿者分布式计算带来的益处和成果同样不可估量。

查看本文作者 濮元恺(约稿) 的其他文章>>
给文章打分 5分为满分(共0人参与) 查看排行>>
频道热词:AMD  散热器  intel  
视觉焦点
CPU评测热点
排行 文章标题
TOP10周热门CPU排行榜
  • 热门
  • 新品
查看完整榜单>>