柏克萊開放式網絡計算平台(英語:Berkeley Open Infrastructure for Network Computing,簡稱BOINC)是目前主流的分佈式計算平台之一,由加州大學柏克萊分校電腦學系發展出的分散式計算系統。原本專為SETI@home項目而設計,目前納入的領域包括數學醫學天文學氣象學等。BOINC匯集全球各地誌願者的電腦或流動裝置,提供運算能力給研究者。截至2017年3月,BOINC在全世界有約815,912台活躍的主機,提供約18.971PetaFLOPS的運算能力[2]

Quick Facts 開發者, 目前版本 ...
BOINC
Thumb
Thumb
使用麥金塔操作系統執行BOINC程式
開發者加利福尼亞大學柏克萊分校太空科學實驗室
目前版本
  • 8.0.2(2024年5月24日;穩定版本)[1]
編輯維基數據連結
原始碼庫 編輯維基數據連結
程式語言Linux
MacOS
Microsoft Windows
Android
語言38種語言
類型分散式計算
網格計算
許可協定
編輯維基數據連結
網站boinc.berkeley.edu 編輯維基數據
數據截至2024-03-13
Close

運行原理

安裝BOINC軟件的電腦在閒置時,會使用電腦的CPUGPU進行運算。即使電腦正在使用,BOINC將利用空閒的CPU週期作計算。如果志願者的電腦裝有NVIDIAAMDIntel的GPU並選擇使用其作為運算硬件,則某些BOINC專案的計算速度將比單純使用CPU的版本提高2至10倍[3]

當志願者使用電腦參與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一般用於進行志願計算,但其平台也可搭建公司私有計算網格或建立校園虛擬超級計算網格。

搭建公司計算網格

搭建BOINC網格主要有幾個步驟:

  • 架設及安裝BOINC伺服器和客戶端
  • 關閉外圍網絡的帳戶建立

這樣的網格與公用網格相比,具有作弊概率低、運算效率高(工作包不用擔心過期)的優勢。

建立校園虛擬計算網格

建立這樣的網格方法類似公司網格,一個較低階的伺服器(約一萬美元)就能勝任幾萬個客戶端的調度工作。倫敦的威斯特斯頓大學建立了一個這樣的網格,據估計,一年可節省約£125,000。[4]

參考文獻

外部連結

Wikiwand in your browser!

Seamless Wikipedia browsing. On steroids.

Every time you click a link to Wikipedia, Wiktionary or Wikiquote in your browser's search results, it will show the modern Wikiwand interface.

Wikiwand extension is a five stars, simple, with minimum permission required to keep your browsing private, safe and transparent.