韓菲 張海飛 丁宏 張超峰 翁敏華 黃義煊
摘? 要:高性能計(jì)算集群軟件是高性能計(jì)算平臺(tái)的核心,如何高效地利用平臺(tái)性能是集群軟件面對(duì)的主要問(wèn)題。聯(lián)想智能超算平臺(tái)LiCO致力于提供簡(jiǎn)單、易用、豐富的高性能計(jì)算及人工智能平臺(tái),具有管理、監(jiān)控、報(bào)警、作業(yè)調(diào)度等多項(xiàng)高性能計(jì)算功能。本文簡(jiǎn)要介紹了高性能計(jì)算集群架構(gòu)后,詳細(xì)描述了LiCO軟件的高性能計(jì)算功能。該軟件不但具有高性能計(jì)算功能,在人工智能領(lǐng)域也在不斷深入探索與研發(fā)。
關(guān)鍵詞:高性能計(jì)算;智能超算;管理監(jiān)控;作業(yè)調(diào)度
中圖分類號(hào):TP391? ? ?文獻(xiàn)標(biāo)識(shí)碼:A
Lenovo Intelligent Computing Orchestration(LiCO) Based on?High Performance Computing
HAN Fei1,2,ZHANG Haifei3,DING Hong3,ZHAO Chaofeng3,WENG Minhua3,HUANG Yixuan3
(1.Lenovo Beijing Co.,LTD,Beijing 100094,China;
2.Lenovo Beijing Information Technology Co.,LTD,Beijing 100094,China;
3.Lenovo(Shanghai) Computer Technology Co.,LTD,Shanghai 201203,China)
Abstract:High performance computing cluster software is the core of high performance computing platform.How to use platform performance efficiently is the main problem that cluster software faces.Lenovo intelligent computing Orchestration(LiCO) is committed to provide a simple,easy and rich platform for high-performance computing and artificial intelligence with management,monitoring,alarm,job scheduling and other high-performance computing functions.After briefly introducing the architecture of high performance computing cluster,this paper describes the high performance computing function of LiCO software in detail.The software not only has the function of high performance computing,but also is researched and developed in the field of artificial intelligence.
Keywords:high performance computing;intelligent computing;management monitoring;job scheduling
1? ?引言(Introduction)
聯(lián)想智能超算平臺(tái)(Lenovo intelligent Computing Orchestration,以下簡(jiǎn)稱LiCO)是聯(lián)想基于超性能計(jì)算(HPC)集群的一站式解決方案,其功能包括計(jì)算機(jī)集群管理、集群監(jiān)控、作業(yè)調(diào)度管理、集群用戶管理、賬戶管理、文件系統(tǒng)管理等[1]。通過(guò)LiCO可以實(shí)現(xiàn)對(duì)超算(super computing)集群資源的統(tǒng)一調(diào)度,同時(shí)支持HPC作業(yè)和AI作業(yè)。隨著人工智能、高性能計(jì)算和大數(shù)據(jù)的廣泛應(yīng)用,LiCO已被越來(lái)越多的政府機(jī)關(guān)、高等院校、氣象環(huán)保、石油石化、機(jī)械制造和生命科學(xué)研究等單位使用。LiCO基于B/S架構(gòu)設(shè)計(jì),用戶可以方便地通過(guò)網(wǎng)頁(yè)來(lái)對(duì)集群進(jìn)行全面而細(xì)致的管控。
2? 高性能計(jì)算集群的基本架構(gòu)(Basic architecture of high performance computing)
高性能計(jì)算(High Performance Computing,簡(jiǎn)稱HPC)由多臺(tái)服務(wù)器組在一起搭建成大型集群,從事大規(guī)模并行計(jì)算的工作。常規(guī)的高性能集群通過(guò)多臺(tái)服務(wù)器的多顆CPU的多核處理,并行計(jì)算,大規(guī)模處理計(jì)算問(wèn)題,高效,高精度,低時(shí)間[2]。目前,除了CPU參與并行計(jì)算,也有了異構(gòu)并行計(jì)算加速器。一個(gè)完整的HPC集群由四種功能節(jié)點(diǎn)組成,本文簡(jiǎn)單介紹:
(1)管理節(jié)點(diǎn):作為HPC集群的核心,肩負(fù)著集群管理、監(jiān)控管理、調(diào)度管理、策略管理、用戶和賬戶管理等主要功能。
(2)登錄節(jié)點(diǎn):是HPC集群練習(xí)外部網(wǎng)絡(luò)或集群之間的紐帶。用戶需要通過(guò)它來(lái)完成用戶的登錄并用它來(lái)上傳應(yīng)用數(shù)據(jù),開發(fā)編譯程序,提交調(diào)度任務(wù)等。
(3)計(jì)算節(jié)點(diǎn):完成高性能計(jì)算任務(wù)。
(4)存儲(chǔ)節(jié)點(diǎn)(I/O節(jié)點(diǎn)):為整個(gè)HPC集群提供了分布式文件系統(tǒng)服務(wù)。用戶通常會(huì)在存儲(chǔ)節(jié)點(diǎn)上連接一個(gè)或多個(gè)外置存儲(chǔ)設(shè)備,以保證HPC的數(shù)據(jù)安全和容量。
3? 聯(lián)想智能超算平臺(tái)LiCO的高性能計(jì)算功能?(High-performance computing features of LiCO)
LiCO作為聯(lián)想自主研發(fā)高性能計(jì)算集群管理軟件[3],具有集群管理、集群報(bào)警、集群監(jiān)控、作業(yè)管理等功能。
3.1? ?LiCO集群管理功能
LiCO具有強(qiáng)大的高性能計(jì)算集群管理功能。在管理功能中,LiCO具備靈活的節(jié)點(diǎn)分組策略,管理員可以根據(jù)需要將集群節(jié)點(diǎn)進(jìn)行邏輯分組,以便后面對(duì)不同的分組進(jìn)行批量監(jiān)控和管理。這樣對(duì)于大集群就有很大的靈活性,可以選中一個(gè)邏輯組進(jìn)行批量的監(jiān)控和管理操作。
LiCO可以實(shí)現(xiàn)批量開關(guān)機(jī),如管理員在Web頁(yè)面上可以選中多個(gè)節(jié)點(diǎn)進(jìn)行批量的開關(guān)機(jī),并且可以遠(yuǎn)程命令、并行命令和并行拷貝[4],具備易用的節(jié)點(diǎn)管理Web Console和Web SSH,以及完整的集群操作日志。
LiCO系統(tǒng)具備完善的節(jié)點(diǎn)信息展示功能,提供了查看單節(jié)點(diǎn)詳細(xì)信息的功能,節(jié)點(diǎn)詳細(xì)信息包括:
(1)節(jié)點(diǎn)的靜態(tài)配置信息,如節(jié)點(diǎn)名、CPU、內(nèi)存、磁盤等信息。
(2)節(jié)點(diǎn)各種監(jiān)控指標(biāo)(溫度、能耗、Load、CPU使用率、內(nèi)存使用率、硬盤使用率、網(wǎng)絡(luò)吞吐)的歷史趨勢(shì)圖。
(3)節(jié)點(diǎn)上當(dāng)前運(yùn)行作業(yè)的列表。
(4)節(jié)點(diǎn)上當(dāng)前報(bào)警信息的列表。
3.2? ?LiCO集群報(bào)警功能
LiCO不但具有集群管理功能,還具有完善的集群報(bào)警功能,可以定義豐富的報(bào)警策略、靈活的報(bào)警觸發(fā)機(jī)制,支持多種報(bào)警處理方式(郵件、短信、微信、聲音、自定義腳本),提供實(shí)時(shí)報(bào)警查詢,提供歷史報(bào)警查詢,實(shí)現(xiàn)基于報(bào)警自定義腳本報(bào)警自動(dòng)處理,以及硬件異常報(bào)警等功能[5]。
在報(bào)警策略管理功能中,管理員可以增加、修改、刪除、啟用/停用報(bào)警策略,從而能夠方便的定義豐富的報(bào)警策略。
在實(shí)時(shí)報(bào)警記錄查詢功能。管理員能方便地查看集群的當(dāng)前報(bào)警記錄。實(shí)時(shí)報(bào)警查詢支持按照?qǐng)?bào)警等級(jí)的過(guò)濾,按照時(shí)間段的過(guò)濾。
LiCO能夠?qū)崿F(xiàn)硬件異常報(bào)警。LiCO可以添加報(bào)警策略,在報(bào)警策略的監(jiān)控指標(biāo)里面選擇硬件監(jiān)控,來(lái)對(duì)系統(tǒng)硬件狀態(tài)進(jìn)行監(jiān)控,包括CPU、內(nèi)存、硬盤、風(fēng)扇、電源等硬件的異常都會(huì)產(chǎn)生報(bào)警記錄。
3.3? ?LiCO集群監(jiān)控功能
同時(shí),LiCO軟件還具有集群監(jiān)控功能,可以顯示豐富的監(jiān)控指標(biāo)、一目了然的集群總體狀態(tài)圖、物理機(jī)房視圖、物理機(jī)架視圖和機(jī)架中節(jié)點(diǎn)三維比較圖,具有靈活的節(jié)點(diǎn)分組,可以監(jiān)控單節(jié)點(diǎn)、刀箱、風(fēng)扇、電源及節(jié)點(diǎn)組整體的性能,并且繪制節(jié)點(diǎn)組中節(jié)點(diǎn)熱力圖。更重要的是,還可以進(jìn)行集群作業(yè)監(jiān)控。
LiCO可以顯示豐富的監(jiān)控指標(biāo)。系統(tǒng)支持多種監(jiān)控指標(biāo)的監(jiān)控:Load、CPU使用率、內(nèi)存使用率、硬盤使用率、網(wǎng)絡(luò)吞吐、溫度、能耗、作業(yè)等。
LiCO可以從系統(tǒng)管理員主頁(yè)顯示集群整體狀態(tài)圖,包括CPU、內(nèi)存、網(wǎng)絡(luò)、存儲(chǔ)、作業(yè)、節(jié)點(diǎn)使用情況、報(bào)警、調(diào)度系統(tǒng)狀態(tài)等,以便管理員可以直觀地了解到集群的整體狀態(tài)情況。
LiCO可以表示物理機(jī)房視圖。系統(tǒng)提供的物理視圖中首先就是物理機(jī)房的監(jiān)控視圖,視圖中直觀地顯示機(jī)房位置、名稱、能耗、機(jī)房中的機(jī)架,機(jī)架中的節(jié)點(diǎn)使用統(tǒng)計(jì)和報(bào)警統(tǒng)計(jì)。
LiCO能夠表示物理機(jī)架視圖和機(jī)架中節(jié)點(diǎn)三維比較圖。系統(tǒng)提供了物理機(jī)架視圖,視圖以Rackview的方式顯示機(jī)架中的節(jié)點(diǎn)。視圖形象以節(jié)點(diǎn)顏色的深淺表示監(jiān)控指標(biāo)數(shù)值的高低。點(diǎn)擊視圖的一個(gè)節(jié)點(diǎn),可以查看這個(gè)節(jié)點(diǎn)的詳細(xì)監(jiān)控。
LiCO可以實(shí)現(xiàn)刀箱的風(fēng)扇、電源監(jiān)控。LiCO提供了刀箱的風(fēng)扇和電源的狀態(tài)監(jiān)控,當(dāng)風(fēng)扇或電源有異常時(shí)LiCO頁(yè)面會(huì)產(chǎn)生硬件異常的報(bào)警。
LiCO能夠做節(jié)點(diǎn)組整體性能監(jiān)控。在系統(tǒng)的分組視圖中,可以查看一個(gè)組的監(jiān)控指標(biāo)(Load、CPU使用率、內(nèi)存使用率、硬盤使用率、網(wǎng)絡(luò)吞吐、溫度、能耗、作業(yè))的歷史趨勢(shì)圖。
LiCO能夠表示節(jié)點(diǎn)組中節(jié)點(diǎn)熱力圖。系統(tǒng)提供熱力圖,直觀地通過(guò)顏色深淺表示節(jié)點(diǎn)組中所有節(jié)點(diǎn)監(jiān)控指標(biāo)的實(shí)時(shí)值的大小。系統(tǒng)支持在熱力圖上根據(jù)值區(qū)間進(jìn)行過(guò)濾顯示。
LiCO可實(shí)現(xiàn)集群作業(yè)監(jiān)控。系統(tǒng)提供了作業(yè)監(jiān)控頁(yè)面,可以直觀查看集群中正在運(yùn)行、等待和結(jié)束的作業(yè)。
3.4? ?LiCO作業(yè)管理功能
LiCO在高性能計(jì)算集群作業(yè)管理上支持各種主流調(diào)度器如LSF、Torque、Slurm、PBS Pro,提供可定制化的作業(yè)模板。同時(shí),LiCO還支持豐富的作業(yè)操作和Web VNC管理,可以方便地導(dǎo)出各種作業(yè)報(bào)告。
LiCO可以通過(guò)命令行提交作業(yè),作業(yè)會(huì)同步顯示在Web頁(yè)面上,也可以通過(guò)Web頁(yè)面提交,系統(tǒng)提供了各種模板來(lái)提交作業(yè)。
LiCO可以直觀地查看作業(yè)運(yùn)行狀態(tài)和運(yùn)行結(jié)果。用戶的Web主頁(yè)通過(guò)列表直觀展了當(dāng)前用戶正在運(yùn)行、等待和已經(jīng)結(jié)束的作業(yè)的信息(作業(yè)名、狀態(tài)、隊(duì)列、作業(yè)提交時(shí)間、作業(yè)開始時(shí)間、作業(yè)結(jié)束時(shí)間等)。用戶的Web主頁(yè)可以查看某一作業(yè)的詳情,如作業(yè)在哪些節(jié)點(diǎn)上執(zhí)行,也可以通過(guò)Web文件系統(tǒng)方便地下載和查看作業(yè)運(yùn)行結(jié)果。
LiCO支持各種分布式文件系統(tǒng):Lustre、GPFS、NFS等;通過(guò)系統(tǒng)提供的Web文件系統(tǒng)可以:創(chuàng)建文件和文件夾、編輯、刪除、上傳、下載、重命名、排序和查看等;文件空間隔離:每個(gè)用戶有自己的文件空間,用戶不能看到和修改其他用戶的用戶文件空間的文件。
4? ?結(jié)論(Conclusion)
聯(lián)想DCG研發(fā)的Lenovo Intelligent Computing Orchestration(LiCO)聯(lián)想智能超算平臺(tái),同時(shí)針對(duì)管理員和普通用戶提供易用的管理平臺(tái),使用LiCO腳本可以快速安裝部署好一整套HPC集群,適用于各種規(guī)模的高性能集群。在HPC方便的功能,LiCO還支持作業(yè)模板定制化服務(wù)、報(bào)表定制化服務(wù)及3D機(jī)房定制化服務(wù)。
此外,LiCO不但具有高性能計(jì)算軟件版本,還推出了LiCO AI和LiCO EM系列版本,下文將針對(duì)LiCO AI軟件開展相關(guān)研究工作。
參考文獻(xiàn)(References)
[1] Bormin Huang.高性能計(jì)算在人工智能中的應(yīng)用[J].重慶理工大學(xué)學(xué)報(bào),2016,30(8):3.
[2] 趙立成,沈文海,肖華東,等.高性能計(jì)算技術(shù)在氣象領(lǐng)域的應(yīng)用[J].應(yīng)用氣象學(xué)報(bào),2016,27(5):550-558.
[3] 王小寧,肖海力,曹榮強(qiáng).面向高性能計(jì)算環(huán)境的作業(yè)優(yōu)化調(diào)度模型的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)工程與科學(xué),2017,39(4):619-626.
[4] 趙春燕,孫婧,魏敏.云及高性能計(jì)算集群環(huán)境中配置管理系統(tǒng)設(shè)計(jì)[J].計(jì)算技術(shù)與自動(dòng)化,2016,35(1):111-116.
[5] 李惠歡,楊敏,吳汝明.基于TORQUE的高性能計(jì)算平臺(tái)記賬系統(tǒng)[J].計(jì)算機(jī)應(yīng)用與軟件,2016,33(8):126-130.