1. 程式人生 > >超級計算機設計方案

超級計算機設計方案

宣告:這是一個打單的文件,用來忽悠別人的。大部分資料來自網際網路。如果重複,純粹轉載。

 超級計算設計方案

20世紀後半期,全世界範圍掀起第超級計算設計方案三次產業革命的浪潮,人類開始邁入後工業社會——資訊社會。在資訊經濟時代,其先進生產力及科技發展的標誌就是計算技術。時至今日,計算科學,尤其是以超級計算機(或高效能運算機)為基礎的計算科學已經與理論研究、實驗科學相併列,成為現代科學的三大支柱之一。

現代超級計算基於先進的叢集技術構建,即常說的網格計算技術(Grid Computing)。網格計算是伴隨著網際網路發展起來的,專門針對複雜科學計算的新型計算模式。這種計算模式利用網際網路把分散在不同地理位置的電腦組織成一個虛擬的“超級計算機”,其中每一臺參與計算的計算機就是一個“節點”,而整個計算是由成千上萬個“節點”組成的“一張網格”,所以稱之為網格計算。這種“超級計算機”有兩個優勢,一個是資料處理能力超強,另一個是能充分利用網上的閒置處理能力。實際上,網格計算是分散式計算(Distributed Computing)的一種。需要說明的是,網格計算是一種傳統的、更加專業化的定義方式,而超級計算則是更加通俗化的概念。兩者從本質上是一致的。

超級計算中心(即超算中心)是指基於超級計算機系統對外提供計算資源、儲存資源以及技術諮詢等服務的機構或單位。超級計算在一個國家的發展中,特別是一些尖端科技的發展中,發揮著不可替代的作用,生物科技、石油勘探、氣象預報、國防技術、工業設計、城市規劃等經濟、社會發展的關鍵領域都離不開超級計算。各個國家,尤其是經濟、科技水平比較發達的國家,都把促進超級計算的發展作為重要的規劃內容。

超級計算與雲端計算

如本刊前文所述,雲端計算是一種將全球範疇、高度可擴充套件、靈活的服務通過網際網路進行釋出與消費,採取按需求和實際使用付費的商業模式。雲端計算代表著全新的價值:它可以讓企業獲得高度可擴充套件和靈活的網際網路服務;SaaS的瘦客戶端應用減輕了軟體的採購和維護成本;所有的功能都以服務的方式提供給使用者。

雲端計算是從網格計算演化而來,能夠隨需應變地提供資源。網格計算可以在雲中,也可能不在,這取決於什麼樣的使用者在使用它。如果使用者是系統管理員和整合商,他們就會關心如何維護雲,如升級、安裝和虛擬化伺服器與應用程式等;如果使用者是消費者,就不必關心繫統是如何執行的。

網格計算與雲端計算有很多相似之處,兩者都能夠被看成是分散式計算所衍生出來的概念,都是為了讓IT資源能夠對使用者透明,為了讓IT資源能夠達到更好的使用率。從這個提高資源利用率的角度出發,逐漸誕生了WEB服務的概念。網路公司通過部署數以萬計的伺服器構成龐大的計算資源,得以提供此前無法完成的新服務。企業或者個人能夠通過網際網路利用那些大網路公司所釋放出來的計算資源,進行應用部署或者向外提供服務。這就是從網格計算到雲端計算的歷史過程。網格計算和雲端計算的意義就在於:無論是使用者還是企業開發者,都能夠通過網際網路來獲得資料或者進行計算,儘管本地資源有限,但是能夠通過網路進行復雜的運算,其資料的計算過程對於使用者來說就像網際網路網路對於本地網路使用者一樣。

1.   超級計算與雲端計算的相同點

從定義上來說,網格計算和雲端計算都試圖將各種IT資源看成一個可以對外提供相應服務的虛擬資源池。雲端計算試圖讓“使用者透明地使用資源”,而網格計算誕生的初衷就是“使用IT資源像使用水電一樣簡單”。

雲端計算是一種寬泛的概念,它允許使用者通過網際網路訪問各種基於IT資源的服務,並且使用者無需瞭解底層IT基礎設施架構就能夠享受到作為服務的“IT相關資源”。而網格的內涵包括兩個方面,一方面是所謂的效用計算或者隨需計算,在這一點上,網格計算跟雲端計算是非常相似的,都是通過資源池或者分散式的計算資源來提供線上的計算、儲存等服務;另外一方面就是所謂的“虛擬超級計算機”,以鬆耦合的方式將大量的計算資源連線在一起,提供單個計算資源所無法完成的超級計算能力。從對外提供服務這一角度來看,網格計算跟雲端計算是非常類似的。

2.   超級計算與雲端計算的不同點

可以看出,網格計算和雲端計算有相似之處,特別是計算的並行與合作的特點。但他們之間的區別也是明顯的。主要有以下幾點:

網格計算的思路是聚合分佈資源、支援虛擬組織、提供高層次的服務,例如分佈協同科學研究等。而云計算的資源相對集中,主要以資料中心的形式提供底層資源的使用,並不強調虛擬組織(VO)的概念;

網格計算的初衷是用聚合資源來支援挑戰性的應用,因為高效能運算的資源不夠用,需要把分散的資源聚合起來。2004年以後,適應普遍的資訊化應用被逐漸強調。而云計算從一開始就支援廣泛企業計算、WEB應用,普適性更強;

在對待異構性方面,二者的理念有所不同。網格計算用中介軟體遮蔽異構系統,力圖使使用者面向同樣的環境,把處理異構部件的困難留給中介軟體來完成。而云計算實際上承認異構,用映象執行,或者提供服務的機制來解決異構性問題。當然不同的雲端計算系統會存在差別,如Google一般用自己內部的專用平臺來支援。

總之,雲端計算是以相對集中的資源,執行分散的應用(大量分散的應用在若干大的中心執行);而網格計算則是聚合分散的資源,支援大型集中式應用(一個大的應用分到多處執行)。但從根本上來說,從應對Internet應用的特徵來說,他們是一致的:為了完成在Internet情況下支援應用、解決異構性、資源共享等問題。

超級計算的分類

隨著超級計算的不斷髮展,逐漸出現了新的應用。新應用在豐富了傳統的網格計算種類的同時,也給網格計算帶來了新的挑戰。

從網路的角度,將超級計算分為三大類:並行資訊處理、分散式I/O處理和並行檔案處理。

1.   並行資訊處理

並行資訊處理指的是在所有計算節點並行執行應用,主節點管理各計算節點的輸入處理,節點之間資訊高速互動,通過“等-停”機制保證資訊互動時序的正確性。通常是在追求最高計算效能的定製計算環境。這類應用就是通常所說的科學計算,包括:氣候模型,材料科學,生物系統模型,核模擬和人工智慧等等。

這類應用的共同特點是對資訊互動時延極敏感。對網路的要求是高頻寬、低時延(Top500高階計算應用IPC時延<10us)。

2.   分散式I/O處理

分散式I/O處理指的是客戶端請求通過主節點發送到所有計算節點進行並行處理,各節點的結果直接返回主節點,由主節點響應給客戶端。時延要求不苛刻,但是所有計算節點以最快速度響應主節點,使得主節點網路位置短時會產生較大突發流量。這類計算的典型應用就是網站搜尋引擎。有資訊顯示:Google 每天需要提供1.5億次查詢服務,平均每毫秒發生1.736次查詢。舉例來說,搜尋“高效能運算”,得到3,250,000結果,用時0.20秒(第二次再搜0.05秒)。

這類應用的共同特點是對網路丟包敏感。對網路的要求是高頻寬、不丟包。對裝置頻寬、包快取大小及分配方式有要求,與應用的具體規模(伺服器數量等)相關。

3.   並行檔案處理

並行檔案處理指的是將龐大的源資料檔案通過主節點分割成多個小檔案後,分發到各計算節點並行處理,處理完畢後返回主節點進行檔案組裝。這類計算的典型應用就是動漫渲染和影視動畫製作。將影視檔案有機分割,分發到叢集內相應伺服器進行渲染等工作,各部分完成後返回組合成新的檔案。

這類應用的特點是節點之間資訊互動少,但都是以大檔案的形式完成。網路流量很大,且存在很強的併發性。對網路的要求是高頻寬互聯。

超級計算中心網路安全解決方案

1.   超級計算在雲端計算中的部署方案

超級計算可以作為雲端計算的一種業務對Internet使用者提供便捷的服務。從這個角度來看,超算中心可以作為雲端計算資料中心的一個部分。但是超級計算與雲端計算仍有較大區別,因此需要看作是特殊的雲端計算服務。超級計算作為“聚合”業務,是一種特殊的伺服器叢集應用。這種應用要求伺服器自成系統,具體表現在:

集群系統不能出現異構現象;

叢集內部的通訊服務質量要求非常高,因此不能與其他業務共享業務通道;

集群系統的安全級別很高,從接入區開始一直到超算區,要求與其他系統保持物理或邏輯隔離;

叢集節點的計算效能要求較高,一般不會出現虛擬機器。因此,叢集內部的通訊流量並不會很大。

綜合各種需求,可以將超級計算中心和雲端計算資料中心的網路進行融合,進而對外提供統一的解決方案。如圖1所示,將超級計算服務作為雲端計算一個獨立的區,保證超級計算端到端的安全隔離,並在超級計算區內實現統一交換架構。該方案重點強調效能、安全、可靠和易用性設計。


2.   超級計算組網方案的高效能設計

由於Infiniband具有高頻寬、低時延轉發的特點(通常可以低於10us,甚至達到納秒級),傳統的超級計算網路通常採用其進行組網。隨著乙太網的發展,乙太網已在超級計算中心的網路中廣泛應用。在高效能運算區域(HPC) TOP500叢集中,採用千兆乙太網的使用者數量是採用InfiniBand叢集使用者數量的兩倍。

千兆乙太網計算叢集的優勢是成本較低,但萬兆乙太網計算叢集的效能遠高於千兆。新一代萬兆乙太網網絡卡可以將伺服器之間延遲降低到千兆網路延遲的八分之一,同時頻寬獲得更高的提升,幾乎與InfiniBand速度不相上下。以H3C資料中心級交換機S12500為例,根據最新的Spirent測試報告顯示,其萬兆埠轉發時延6~14us(盒式萬兆交換機的轉發時延更低)。除了轉發時延有大幅度降低之外,資料中心級交換機還能夠提供超高密度的萬兆接入埠,可以實現大量計算節點的高密度接入,有效的降低成本。

近年來隨著萬兆乙太網成本逐漸降低,高效能叢集升級到萬兆乙太網將會有效的提高計算叢集的價效比。另外,萬兆乙太網每Gb的埠功耗比千兆乙太網的要低,使得使用者獲得10倍頻寬的同時又降低了能耗。

3.   超級計算組網方案的高安全設計

安全設計方案可以分為安全分割槽規劃以及端到端的安全部署兩部分。如圖2所示。

在超算中心網路中,存在不同業務種類的裝置且易受攻擊程度不同。根據這些業務種類和裝置情況可制定不同的安全策略和信任模型,將超算網路劃分成不同區域,區域之間實現邏輯隔離,重點保證高效能運算區域(HPC)的資料安全和流量服務。

針對不同級別、不同業務的使用者實施端到端的安全部署,從接入終端一直到超算中心最終的伺服器,都能一直保持邏輯隔離的狀態。通過端到端的安全隔離進一步加強超算中心核心業務的資料中心安全性和服務質量。



4.   超級計算組網方案的高可靠設計

採用網路虛擬化技術將實現高可靠性要求,可實現分散式裝置管理、分散式路由和跨裝置鏈路聚合,部署虛擬化除了提高超算中心網路的可用性,減少單點故障影響,同時無需再考慮MSTP、VRRP等協議,解決了傳統裝置和鏈路只能工作在主/備模式和利用率低於50%的效能瓶頸。

因此,通過部署網路虛擬化技術,可以有效地將超算業務的網路可靠性提高一個級數,極大的保證使用者業務的連續性。同時,超算中心網路的效能將以倍數級別靈活擴充套件,增強可靠性,簡化配置,降低投入和維護成本。

5.   超級計算組網方案的易用性設計

傳統的超算中心網路結構異構複雜,介面不統一:前端網和管理網採用乙太網;儲存網採用FC;計算網用Infiniband。這導致超算中心執行時協議轉換開銷大、速率不匹配、存在效能瓶頸、開發與部署週期長、無法滿足業務快速靈活部署和效能需求的問題。



超算中心網路易用性解決方案就是一體化網路設計方案,通過CEE(增強乙太網)技術和標準IP協議融合前端、計算、儲存和管理四張網路,消除網路技術割裂所來的種種弊端。可以有效的簡化網路層次、輕鬆部署、降低TCO。

結束語

    雲端計算是從網格計算演化來的,但並不等同於網格計算。網格計算(尤其是大規模的網格計算)對於網路的要求很高。超算中心網路設計方案需要滿足不同型別的超級計算的需求,必須能極大的提高超級計算的效能、可靠性、易用性和安全等方面的指標。