網格計算

網格計算

網格計算是分散式計算的一種,是一門計算機科學。它研究如何把一個需要非常巨大的計算能力才能解決的問題分成許多小的部分,然後把這些部分分配給許多計算機進行處理,最後把這些計算結果綜合起來得到最終結果。最近的分散式計算項目已經被用於使用世界各地成千上萬志願者的計算機的閑置計算能力,通過網際網路,您可以分析來自外太空的電訊號,尋找隱蔽的黑洞,並探索可能存在的外星智慧生命;您可以尋找超過1000萬位數字的梅森質數;您也可以尋找並發現對抗艾滋病毒更為有效的藥物。用以完成需要驚人的計算量的龐大項目。

分散式


分散式計算是利用網際網路上的計算機的 CPU 的閑置處理能力來解決大型計算問題的一種計算科學。
隨著計算機的普及,個人電腦開始進入千家萬戶。與之伴隨產生的是電腦的利用問題。越來越多的電腦處於閑置狀態,即使在開機狀態下CPU的潛力也遠遠不能被完全利用。我們可以想象,一台家用的計算機將大多數的時間花費在“等待”上面。即便是使用者實際使用他們的計算機時,處理器依然是寂靜的消費,依然是不計其數的等待(等待輸入,但實際上並沒有做什麼)。網際網路的出現, 使得連接調用所有這些擁有閑置計算資源的計算機系統成為了現實。那麼,一些本身非常複雜的但是卻很適合於劃分為大量的更小的計算片斷的問題被提出來,然後由某個研究機構通過大量艱辛的工作開發出計算用服務端和客戶端。服務端負責將計算問題分成許多小的計算部分,然後把這些部分分配給許多聯網參與計算的計算機進行并行處理,最後將這些計算結果綜合起來得到最終的結果。
分散式計算意味著應用程序不再“綁定”到具體的物理系統和平台軟體上,數據和程序是能夠在計算節點間“流動起來”的。

實踐證明


當然,這看起來也似乎很原始、很困難,但是隨著參與者和參與計算的計算機的數量的不斷增加, 計算計劃變得非常迅速,而且被實踐證明是的確可行的。目前一些較大的分散式計算項目的處理能力已經可以達到甚而超過目前世界上速度最快的巨型計算機。您也可以選擇參加某些項目以捐贈的CPU 內核處理時間,您將發現您所提供的 CPU 內核處理時間將出現在項目的貢獻統計中。您可以和其他的參與者競爭貢獻時間的排名,您也可以加入一個已經存在的計算團體或者自己組建一個計算小組。這種方法很利於調動參與者的熱情。

參與計算


參與分散式計算——一種能充分發揮您的個人電腦的利用價值的最有意義的選擇——只需要下載有關程序,然後這個程序會以最低的優先度在計算機上運行,這對平時正常使用計算機幾乎沒有影響。如果你想利用計算機的空餘時間做點有益的事情,還猶豫什麼?馬上行動起來吧,你的微不足道的付出或許就能使你在人類科學的發展史上留下不小的一筆呢!

專業定義


(中國科學技術信息研究所對分散式計算的定義)
分散式計算是一種新提出的計算方式。所謂分散式計算就是在兩個或多個軟體互相共享信息,這些軟體既可以在同一台計算機上運行,也可以在通過網路連接起來的多台計算機上運行。

優點


分散式計算比起其它演演算法具有以下幾個優點:
1、稀有資源可以共享,
2、通過分散式計算可以在多台計算機上平衡計算負載,
3、可以把程序放在最適合運行它的計算機上,
其中,共享稀有資源和平衡負載是計算機分散式計算的核心思想之一。
實際上,網格計算就是分散式計算的一種。如果我們說某項工作是分散式的,那麼,參與這項工作的一定不只是一台計算機,而是一個計算機網路,顯然這種“螞蟻搬山”的方式將具有很強的數據處理能力。

工作原理


下面,我們看看它是怎麼工作的:
首先, 要發現一個需要非常巨大的計算能力才能解決的問題。這類問題一般是跨學科的、極富挑戰性的、人類急待解決的科研課題。其中較為著名的是:
1.解決較為複雜的數學問題,例如:GIMPS(尋找最大的梅森素數)。
2.研究尋找最為安全的密碼系統,例如:RC-72(密碼破解)。
3.生物病理研究,例如:Folding@home(研究蛋白質摺疊,誤解,聚合及由此引起的相關疾病)。
4.各種各樣疾病的藥物研究,例如:United Devices(尋找對抗癌症的有效的藥物)。
5.信號處理,例如:SETI@Home(在家尋找地外文明)。
從這些實際的例子可以看出,這些項目都很龐大,需要驚人的計算量,僅僅由單個的電腦或是個人在一個能讓人接受的時間內計算完成是決不可能的。在以前,這些問題都應該由超級計算機來解決。但是, 超級計算機的造價和維護非常的昂貴,這不是一個普通的科研組織所能承受的。隨著科學的發展,一種廉價的、高效的、維護方便的計算方法應運而生——分散式計算!

網格計算優勢

網格計算的目的是,通過任何一台計算機都可以提供無限的計算能力,可以接入浩如煙海的信息。這種環境將能夠使各企業解決以前難以處理的問題,最有效地使用他們的系統,滿足客戶要求並降低他們計算機資源的擁有和管理總成本。網格計算的主要目的是設計一種能夠提供以下功能的系統:
提高或拓展型企業內所有計算資源的效率和利用率,滿足最終用戶的需求,同時能夠解決以前由於計算、數據或 存儲資源的短缺而無法解決的問題。
建立虛擬組織,通過讓他們共享應用和數據來對公共問題進行合作。
整合計算能力、存儲和其他資源,能使得需要大量計算資源的巨大問題求解成為可能。
通過對這些資源進行共享、有效優化和整體管理,能夠降低計算的總成本。

網格計算環境

網格計算主要被各大學和研究實驗室用於高性能計算的項目。這些項目要求巨大的計算能力,或需要接入大量數據。
網格計算的目的是支持所有行業的電子商務應用。例如,飛機和汽車等複雜產品的生產要求對產品設計、產品組裝和產品生命周期管理進行計算密集型模擬。其他一些實例還有,通過 Monte Carlo 方法對複雜金融環境的模擬,以及生命科學領域的許多項目。
網格環境的最終目的是,從簡單的資源集中發展到數據共享,最後發展到協作處理和有質量的服務(Quality of Service)。
資源集中 —— 使公司用戶能夠將公司的整個 IT 基礎設施看作是一台計算機,能夠根據他們的需要找到尚未被利用的資源。
數據共享 —— 使各公司接入遠程數據。這對某些生命科學項目尤其有用,因為在這些項目中,各公司需要和其他公司共享人類基因數據。
通過網格計算來合作 —— 使廣泛分散在各地的組織能夠在一定的項目上進行合作,整合業務流程,共享從工程藍圖到軟體應用程序等所有信息,協同處理項目中的問題。
有質量的服務(QoS)——是指能針對不同用戶或者不同數據流採用相應不同的優先順序,或者是根據應用程序的要求,保證數據流的性能達到一定的水準。為同一網路中的各結點提供質量有保障的服務。

與雲計算的異


與網格計算不同,雲計算更多的是由工業界主導發展的一套技術和標準。雲計算和網格計算都能夠提高IT資源的利用率。但是雲計算側重於IT資源的整合,整合后按需提供IT資源;網格計算側重於不同組織間計算能力的連接。雲計算依靠IT資源供給的靈活性,革新了IT產業的商業模式,是基礎IT資源外包商業模式的典型運用。網格計算是擁有計算能力的節點自發形成聯盟,共同解決涉及大規模計算的問題,是基礎IT資源聯合共享模式的運用。