BOINC

伯克利开放式网络计算平台,一个常见而开源的网格计算中间件。

伯克利开放式网络计算平台(英语:Berkeley Open Infrastructure for Network Computing,简称BOINC)是目前主流的分布式计算平台之一,由加州大学伯克利分校电脑学系发展出的分布式计算系统。原本专为SETI@home项目而设计,目前纳入的领域包括数学医学天文学气象学等。BOINC汇集全球各地志愿者的电脑或移动设备,提供运算能力给研究者。截至2017年3月,BOINC在全世界有约815,912台活跃的主机,提供约18.971PetaFLOPS的运算能力[4]

BOINC
使用麦金塔操作系统执行BOINC程序
使用麦金塔操作系统执行BOINC程序
开发者加利福尼亚大学伯克利分校太空科学实验室
当前版本
  • 7.6.22 (2016年1月1日)[1]
  • 1.4.2 (2023年1月23日;稳定版本)[2]
  • 7.22.2 (2022年5月21日;稳定版本)[3]
编辑维基数据链接
源代码库 编辑维基数据链接
编程语言Linux
MacOS
Microsoft Windows
Android
语言38种语言
类型分布式计算
网格计算
许可协议 编辑维基数据链接
网站boinc.berkeley.edu 编辑维基数据
数据截至2024-03-13

运行原理 编辑

安装BOINC软件的电脑在闲置时,会使用电脑的CPUGPU进行运算。即使电脑正在使用,BOINC将利用空闲的CPU周期作计算。如果志愿者的电脑装有NVIDIAAMDIntel的GPU并选择使用其作为运算硬件,则某些BOINC项目的计算速度将比单纯使用CPU的版本提高2至10倍[5]

当志愿者使用电脑参与BOINC项目时,BOINC会与项目的服务器连线,服务器会向电脑提供工作单位(Workunit,简称WU),然后电脑会对工作单位作运算,等待运算完成后,BOINC将把结果上传至项目服务器。

项目服务器负责协调各志愿者电脑的工作,包括发送工作单位、接收已处理的结果、核对大量的结果再作处理,成为研究人员需要的数据。由于个别的电脑可能会在运算过程出现错误,所以服务器一般会把同一工作单位发送至多个志愿者,并比较各个结果。

BOINC设有积分系统,积分间接反映志愿者的贡献,因为在BOINC上可以运行的项目千差万别。例如项目A的工作包在某台电脑上需要3个小时完成,而项目B的工作包在该电脑上需要30个小时才能完成,显然用完成的工作包的数目来衡量工作量是不可行的;而不同电脑的性能也有差别,用CPU时间来衡量工作量亦是不行的。积分系统只能通过一定的算法得到志愿者实际完成的计算量。

BOINC从版本6.4.5起,开始支持GPU运算,目前有GPUgrid.netEinstein@HomeMilkyway@homePrimeGridCollatz ConjectureDNETC@Home等多个GPU项目。

用户亦可使用BOINC 帐户管理器(BOINC Account Manager)方便参与和管理不同BOINC平台项目。

项目 编辑

 
旧的BOINC标志

生物学、医学 编辑

气象学、地球科学 编辑

物理、化学、天文学 编辑

  • vLHC@Home —亦称"LHC2.0",先前为Test4Theory项目。利用虚拟机模拟粒子加速器的项目。

数学 编辑

电脑、信息技术 编辑

除分布式计算以外的应用 编辑

尽管BOINC一般用于进行志愿计算,但其平台也可搭建公司私有计算网格或创建校园虚拟超级计算网格。

搭建公司计算网格 编辑

搭建BOINC网格主要有几个步骤:

  • 架设及安装BOINC服务器和客户端
  • 关闭外围网络的帐户创建

这样的网格与公用网格相比,具有作弊概率低、运算效率高(工作包不用担心过期)的优势。

创建校园虚拟计算网格 编辑

创建这样的网格方法类似公司网格,一个较低端的服务器(约一万美元)就能胜任几万个客户端的调度工作。伦敦的威斯特斯顿大学创建了一个这样的网格,据估计,一年可节省约£125,000。[6]

参考文献 编辑

  1. ^ Release 7.6.22. 2016年1月1日 [2020年7月21日]. 
  2. ^ https://github.com/BOINC/boinc/releases/tag/server_release%2F1.4%2F1.4.2; 出版日期: 2023年1月23日.
  3. ^ https://github.com/BOINC/boinc/releases/tag/client_release%2F7.22%2F7.22.2; 出版日期: 2022年5月21日.
  4. ^ BOINC首頁統計數據. [2013-06-16]. (原始内容存档于2013-06-10). 
  5. ^ Use your NVIDIA GPU for scientific computing. [2009-03-12]. (原始内容存档于2008-12-28) (英语). With NVIDIA's assistance, some BOINC-based projects have applications that run on NVIDIA GPUs using CUDA. These applications run from 2X to 10X faster than the CPU-only version. 
  6. ^ DIY SUPERCOMPUTER SAVES £1,000S--University of Westminster[永久失效链接]

外部链接 编辑