陳紅梅 張紀英

摘 ?要: 研究了集群的系統結構和主要優勢,以及集群式高性能計算系統的誕生;分析了集群式高性能計算系統的架構和構建方式,集群構建包括網絡部署、存儲系統、計算節點、管理節點、登錄節點等部分。在此基礎上構建了基于Linux的集群式高性能計算系統。
關鍵詞: 集群技術; 高性能計算; 系統架構; 集群構建
中圖分類號:TP399 ? ? ? ? ?文獻標志碼:A ? ? 文章編號:1006-8228(2015)07-13-02
Research of high performance computing cluster
Chen Hongmei, Zhang Jiying
(Jianghan University Institute for Interdisciplinary Research, Wuhan, Hubei 430056, China)
Abstract: This paper researches the system architecture and the main advantages of the cluster, then analyzes the framework of the high performance computing cluster. The high performance computing cluster is composed of computing network, management network, storage system, compute nodes, log-on nodes, etc. On the basic of the above research, Jianghan University built the high performance computing cluster based on Linux.
Key words: cluster technology; high performance computing; framework of the high performance computing cluster; cluster building
0 引言
隨著社會的發展,各個領域對高性能計算的需求越來越迫切。高性能計算已被公認為繼理論科學和實驗科學之后的第三大科學研究方法,是科技創新的重要手段[1]。在當前社會情況下,高性能計算已經成為一個國家綜合實力的體現,對國家戰略的發展有著重要影響。由此可見,高性能計算機是信息產業的重要領域,是現代社會科學研究、社會服務和經濟活動中一種極為重要且不可或缺的戰略工具。
網絡技術的快速發展和處理器性能的迅速提高,讓越來越多的人開始用相對便宜的以太網把相對廉價的服務器連接起來組成集群使用,從而以較少的代價獲得較高的性能。集群已成為高性能計算機研究開發的一個方向,尤其是基于Linux的集群式高性能計算系統就有“窮人的超級計算機”之說。
1 計算機集群技術
1.1 集群的概念
集群就是一組相互獨立的、通過高速網絡互聯的計算機,這些計算機能夠協同工作,并對外表現為一個集成單一的計算機資源。美國著名的阿伯丁公司(Aberdeen Group Inc)對計算機集群系統下的定義為——計算機集群是一種多節點的計算機,具有以下特點:
⑴ 從用戶、程序員、操作員及管理員角度看,它相當于一個單一的系統;
⑵ 可以提高可靠性;
⑶ 具有在集群范圍內統一的操作與管理特征;
⑷ 為打印隊列、批作業隊列、文件系統以及外部設備等在集群范圍內共享;
⑸ 完美的增量式擴充能力;
⑹ 通過互連與技術選擇可以進行靈活的配置。
1.2 集群的系統結構
根據典型的集群體系結構,其中涉及到的主要技術可以歸屬于四個層次。
⑴ 網絡層:包括通信協議和網絡互聯結構等。
⑵ 節點機和操作系統層:包括高性能客戶機、分層或基于微內核的操作系統等。
⑶ 管理層:包括負載平衡、資源調度、資源管理、安全問題和并行I/0等。
⑷ 應用層:包括并行程序開發環境和并行應用等。
集群技術是上述四個層次的有機結合,各層次雖然側重領域有所不同,但都有其不可或缺的重要性[2]。管理層是集群系統所特有的功能與技術的體現,正是集群管理系統把多臺計算機組織起來,使之可以被稱為“集群”。
1.3 集群的主要優勢
集群系統之所以能夠從技術可能發展到實際應用,主要原因是它與傳統的并行處理系統相比具有高性價比、高性能、高可用性和高可擴展性等幾個明顯優勢。
⑴ 高性價比
集群技術是使用特定方式,將符合工業標準的硬件設備連接起來。在同樣性能的條件下,采用計算機集群比采用同等運算能力的大型計算機具有更高的性價比。
⑵ 高性能
像天氣預報、核試驗模擬等這樣的計算密集型應用,需要計算機具有很強的運算處理能力。對于這些應用,一般都使用集群技術,集中幾十甚至上百臺計算機來滿足需求。集群技術研究的一個重要目標之一就是提高處理性能。
⑶ 高可用性
集群技術使系統在一個節點失效后,它的任務可以傳遞給其他節點。從而在故障發生時集群系統仍可以繼續工作,將系統停運時間減到最小。
⑷ 高可擴展性
采用集群技術時,若想擴展系統能力,只需要將新的服務器加入集群中即可。對于用戶來說,服務的連續性幾乎沒有變化,好像系統在不知不覺中完成了升級。
2 集群式高性能計算系統
2.1 集群式高性能計算系統的誕生
集群式高性能計算系統是使用高速通信網絡將多臺原本獨立、完整的微機或工作站連接在一起,構成一個統一的整體,使之可作為一種單一的計算資源來使用。與SMP和MPP相比,集群具有更高的可擴展性、可用性和易維護性,而且價格低,性價比高。
二十世紀九十年代中期,隨著微處理器和動態隨機存儲器速度的提升以及PCI總線的出現,個人電腦市場日趨成熟。另外,在互聯網的浪潮之下,局域網技術也迅速發展,在帶寬和延遲上與傳統高性能計算機所采用的專有網絡的差距也日漸減少。在軟件方面,1991年出現的Linux操作系統,到1994年已經相當穩定[3];1993年發布的基于消息傳遞的并行程序設計標準MPI,是一種由國際組織維護的國際標準,并有許多廠商為其提供具體的實現版本。至此,集群式高性能計算系統的出現可謂是萬事俱備。
美國航空航天局(National Aeronautics and Space Administration,NASA)Goddard 航天中心的Beowulf 項目為集群式高性能計算系統的研究帶來了突破。1994 年名為Wiglaf 的第一臺Beowulf 集群在Goddard 航天中心誕生,1995 年第二代Beowulf 集群Hrothgar 建成,1997年第三代Beowulf 集群Loki 和Hyglac分別在LANL 和加州理工學院建成。加州大學伯克力分校(University of California at Berkeley)的NOW(Network Of Workstations)是與Beowulf項目齊名的另一個著名的高性能集群項目。1997 年誕生的NOW-2 ,其運算能力超過10GFLOPS,成為首臺進入世界超級計算機500 強(Top500)的集群計算機。
2.2 集群式高性能計算系統的架構
集群式高性能計算系統由多個節點組成,系統構建和管理需要強大的專業技術支撐。集群構建包括網絡部署、存儲系統、計算節點、管理節點、登錄節點等部分[4]。集群式高性能計算系統的一般架構如圖1所示。
圖1 ?集群式高性能計算系統架構
集群式高性能計算系統要組建兩個主要高速網絡:管理網絡和計算網絡。管理網絡一般通過萬兆或千兆以太網將計算節點、登錄節點、I/O節點和管理節點全相連。計算網絡一般使用高速率的Infiniband網絡將計算節點和I/O節點全相連。另外,存儲系統和I/O節點之間一般通過高速光纖相連。
出于安全和價格方面的考慮,集群式高性能計算系統中各節點一般安裝Linux操作系統。在管理層,為了實現對集群的有效管理,集群要安裝集群管理工具如IBM for Linux Extreme Cloud Administration Toolkit(XCAT);同時安裝作業調度系統如IBM Platform LSF,以實現高性能的負載管理,有效利用集群資源,實現最佳性能。在應用層,要配置相應的編譯器和數學庫等,并安裝配置OpenMPI等并行計算環境。
2.3 集群式高性能計算系統實例
隨著高性能計算機和計算方法的快速發展,物理、化學、生物等學科對計算資源有著迫切的需求,國內多所高校和科研院所紛紛開始構建高性能計算平臺[5]。江漢大學也構建了集群式高性能計算系統,該系統包括19個計算節點、2個I/O節點、2個登錄節點、1個管理節點、一組管理網絡、一組計算網絡。管理網絡通過萬兆以太網將計算節點、登錄節點、I/O節點和管理節點全相連。計算網絡使用56Gbps速率的Infiniband網絡將刀片式計算節點、GPU計算節點、胖節點、登錄節點和I/O節點全相連。
江漢大學集群式高性能計算系統的操作系統為Redhat Linux Server 6.4,作業調度系統為IBM Platform,應用開發環境軟件為Intel Cluster Studio軟件工具包。
3 結束語
計算機集群作為當前世界上并行處理的熱點和主流,具有許多明顯優勢:高性價比、高性能、高可用性和高可擴展性等。集群式高性能計算系統可以采用廉價的符合工業標準的硬件構造高性能的系統,并且可以通過增加CPU個數和內存容量來提高性能。上述優勢使得集群式高性能計算系統的研究已經成為并行計算研究開發的一個重要方向。
參考文獻:
[1] 李波,曹福毅,王祥鳳.高性能計算技術發展概述[J].沈陽工程學院學
報(自然科學版),2012.8(3):252-254
[2] 張洋.計算機集群技術概述[J].信息系統工程,2013.32(5):95
[3] 周興銘.高性能計算技術發展[J].自然雜志,2011.33(5): 249-254
[4] 林皎,陳玉潔,張武生,徐偉平,楊廣文.高性能計算平臺建設的探索與
實踐[J].實驗技術與管理,2012.29(5):217-219
[5] 盛樂標,游偉倩,周慶林.南京大學高性能計算中心建設的探索與實
踐[J].實驗技術與管理,2013.30(11):144-146