有些東西的計算量實在太大,就像是天氣預測的資料,就必須使用超級電腦還作資料分析。但是超級電腦實在是太貴了,如果不是背後有金主或是國家機關贊助,一般的團體根本不可能購買。
但是沒有資金又有運算的需求怎麼辦?這時候你可以考慮將你的資料切割成非常小的部分,先交給其他普通的電腦運算,再將這些小部分計算好的結果,交由較大型的電腦合併分析這些結果。也就是讓小電腦(或較小的運算單元)分工合作來完成大型的運算,就叫做「分散式運算 (distributed computing) 」。
目前分散式運算較為有名的作業平台是 BOINC。BOINC 在分散式運算的專案連線以後,會將資料下載到你的電腦,並且依照設定在不影響你工作的情況下,讓電腦分析這些專案資料。預設是在電腦螢幕保護時執行運算,就算你選擇 24 小時都執行運算,BOINC 也會將程式的優先權設定在最低,完全不會讓你有在執行專案的感覺。
現在有很多研究組織,因為金費不足、或是為了加速研究進度,就使用分散式運算把自己的資料分成小部分給世界上願意參與的人一同分析。如:SETI@home(外星人搜尋)、World Community Grid(AIDS、癌症等研究)、Climateprediction.net(世界氣候變化研究)等等,都已經在 BOINC 平台建立自己的專案,供任何有興趣的人參與研究計畫。
小弟自己就參與了 World Community Grid、Climateprediction.net 的研究計畫,至於 SETI@home 因為比較沒有那麼急迫,已經沒有再去執行了。
BOINC 的使用者介面
World Community Grid:FightAIDS@HOME 畫面
Climateprediction.net 畫面
如果你想參與研究,歡迎加入 BOINC 分散式運算的行列。
好站推薦:分散式運算愛好者俱樂部