目录
一、定义 ............................................................................................................................... 1
二、工作方式 ....................................................................................................................... 1
三、作用 ............................................................................................................................... 1
四、局限性 ........................................................................................................................... 1
五、安全问题 ....................................................................................................................... 2
七、分布式计算 - 对计算机软硬件的影响 .......................................................................... 2
分布式计算
一、定义
分布式计算是一门计算机科学,主要研究分布式系统。一个分布式系统包括
若干通过网络互联的计算机。这些计算机互相配合以完成一个共同的目标(我们
将这个共同的目标称为“项目”)。具体的过程是:将需要进行大量计算的项目数
据分割成小块,由多台计算机分别计算,再上传运算结果后统一合并得出数据结
论。在分布式系统上运行的计算机程序称为分布式计算程序;分布式编程就是编
写上述程序的过程。
二、工作方式
项目方把大的计算任务分割成小块(任务单元),通过互联网分发给志愿者
进行计算,志愿者计算完成后再通过网络把各自的计算结果返回到项目方的服务
器。
三、作用
可以帮助一些缺乏研究资金的、公益性质的科学研究,加速人类的科学进程。
有效利用全世界联网机器的闲置处理能力,向大众普及科学意识。
四、局限性
如上分布式计算的工作方式,该类科学研究必须是可能通过计算来解决全部
或部分问题,而且其计算过程必须比较容易被分割成个人计算机的处理能力能够
接受的大小,因此,分布式计算并不适用于所有的科学研究。
五、安全问题
1.信任项目
对用户方来说,加入任何一个项目前,您必须确保您可以信任项目的研制方,
主要涉及两方面:个人计算机上的隐私数据,您从项目方下载的计算程序,运行
在本机,而且可以访问网络,因此,只有可靠的项目方才能保证您计算机上的隐
私数据不会恶意的取走、修改等。
2.个人计算机寿命
个人计算机的寿命,虽然分布式计算的计算程序一般运行在最低优先级,不
会对您的日常使用造成影响,但计算程序全负荷运行时仍会对计算机的各个部件
造成一定压力,要了解更多请查看分布式计算对计算机软硬件的影响。
3.冗余计算机制
对项目方来说,参加分布式计算的志愿者毕竟不是项目方自己的人员,并不
是全体可信任,因此必须引入一定的冗余计算机制,才防止计算错误、恶意作弊
等。
六、任务单元
任务单元,又称为任务包,对应的英文单词为 Workunit,可简称 WU,是分
布式计算项目的客户端分配到的最小单元的计算任务。客户端在连接到项目服务
器后,可下载一个或多个新任务单元,计算完成后,再将这些任务单元的计算结
果上传给项目服务器,并根据情况决定是否同时取回更多新的任务单元。
七、分布式计算 - 对计算机软硬件的影响
1、软件方面
分布式计算项目对计算机的使用与日常应用所运行的程序并无很大区别,主
要区别是项目计算程序一般会以最低优先级别获得所有空闲的CPU时间,因为比
起其他程序的优先级别都要低,所以虽然一般情况下计算项目看上去占用了全部
的处理器资源,但一旦其他程序需要CPU运算时,项目计算程序会在操作系统的
调度下自动让出CPU时间。对于 BOINC 平台的用户,根据您的需要,既可在
客户端的本地参数设置使项目只当计算机空闲时进行运算,也可以直接允
许 BOINC 使用的处理器资源比例,具体操作可以参考 BOINC 的使用教程。
2、硬件方面
计算机的部件一般包括主机板(motherboard)、中央处理器(CPU)、内存
(memory)、硬盘(hard disk)、显示卡(display card)、电源(power)、显
示器(monitor)、键盘(keyboard)、鼠标(mouse)等等。
分布式计算项目所利用志愿者的硬件主要是CPU、内存和显示卡图形处理器
(GPU)的闲置资源,并占用一些硬盘空间。由于各项目的差异性很大,所占用
的内存和硬盘空间也分别很大。例如数学类项目对内存和硬盘的占用都比较少,
而生命科学类的项目会占用较多内存与硬盘空间。虽然运行分布式计算项目对计
算机的硬件寿命并未多少缩减,但长期运行还是会带来一些影响。
3、对主机板的影响
计算项目运行过程将有大量数据在各个部件交换,芯片组的使用率将提高,
同时会带来一定的能耗和散热问题。
4、对CPU的影响
计算必然需要CPU的消耗运算功能,而此时CPU将全速进行工作,CPU所消
耗的电力和产生的热量也随之大幅增加。
5、对内存的影响
运行计算程序需要占用一定的内存空间。如果计算机所配置的内存不多的情
况下,运行计算程序将减少可用的内存空间,特别对于多路多核系统,每个CPU
核心都将运行一个计算程序,此时所消耗的内存空间会倍增。BOINC平台用户可
以通过本地参数设置来限制项目使用的CPU的数量(详见 BOINC 的使用教
程)。
6、对硬盘的影响
参加分布式计算项目须在硬盘储存客户端软件、计算程序、任务单元等资料,
不同的项目对硬盘空间的需要有所不同,例如CPDN等气候项目需要比较多的硬
盘空间,达到几百MB。一般项目都不需要频繁的读写硬盘数据,但有些项目会
需要较多的页面文件(虚拟内存)空间。
7、对显示卡的影响
不少项目有提供屏幕保护程序,所显示的图形会消耗一定的CPU与GPU的计
算能力,同时带来电力消耗和散热问题。利用GPU计算能力的项目有着与对CPU
同样的影响,电耗和散热的问题。另外由于调度GPU进行计算时需要到CPU的协
助,会同时消耗一定的CPU计算时间。
8、对电源的影响
运行项目时CPU会消耗大量电力,特别对于超频使用的,请保证整机电力消
耗在电源额定使用范围内。如果电源长期超负荷运作,将影响电源的寿命,而且
电源的转换效率也会降低。电源的故障更会涉及其他所有部件的安全。
9、对显示器的影响
带屏幕保护程序的项目可以设置在计算机闲置是启用屏保,对于CRT显示器
有一定的保护作用。但由于开启显示器即消耗电力,建议在计算机闲置时手动关
闭显示器或者设置自动关闭显示器,以节省能耗。
10、对散热器的影响
运行计算程序将是计算机各个部件产生更多的热量。风冷散热器的风扇将以
高速运转。风扇寿命会降低,同时计算机环境的灰尘会更快的囤积在风叶和散热
片上,增加了清理灰尘的频率。由于风扇的高速运转,将对环境带来更大的噪音。
11、对网络的影响
大部分项目对网络的需求都很低,计算程序和工作单元文件一般不大,在进
行计算时一般都不需要网络连接。往后只需要下载新工作单元和上传计算结果。