付喜春,王景德,吳顯鳳,李雪巖,陳建寧
(東方地球物理公司大慶物探研究院 黑龍江 大慶 163357)
東方地球物理公司大慶物探研究院(以下簡稱大慶物探研究院)成立于1981年,是一家專門從事地球物理勘探數(shù)據(jù)處理、解釋及地震地質(zhì)綜合研究于一體的生產(chǎn)科研機構,通過多年的技術積累,逐步形成了自己獨特的地震資料處理、解釋、高性能計算機技術系列?,F(xiàn)有一套HP PC集群計算機用于地震資料處理,包括:128臺計算節(jié)點(單節(jié)點雙CPU、8核心)、12臺I/O節(jié)點(單節(jié)點四CPU、16核心)和6臺管理節(jié)點(單節(jié)點雙CPU、8核心),均采用AMD處理器平臺,雙精度浮點運算速度14.1萬億次/秒,通過1臺Foundry RX16 10G交換機上聯(lián)到Extreme BDX8 40G核心網(wǎng)絡交換機,實現(xiàn)集群和節(jié)點之間網(wǎng)絡互聯(lián)。HP集群初始安裝了法國CGG公司的GeoCluster地震處理軟件。
大慶物探研究院另有一套IBM PC集群(512節(jié)點,單節(jié)點8核心,Intel處理器平臺),其中128節(jié)點安裝了美國西方公司的Omega地震處理軟件,在運行疊前時間偏移(簡稱PSTM)并行作業(yè)時,通過自主研發(fā)的“動態(tài)監(jiān)控軟件”[1]和“性能特征分析軟件”,對PC集群進行性能監(jiān)控和分析,發(fā)現(xiàn)并行運算節(jié)點在運行過程中,對系統(tǒng)CPU資源的使用存在明顯的負載不均現(xiàn)象,表現(xiàn)在:每個節(jié)點的8個核心,同時只有3~6個核心的利用率大于70%,且隨機變換,其它2~5個核心利用率均在10%以下。導致參與計算的各節(jié)點CPU的平均利用率只達到55%~60%左右,大大影響了集群和處理系統(tǒng)的運算效率。
對Omega軟件PSTM并行作業(yè)CPU資源利用率低問題以及PSTM模塊的運行機制進行了認真細致的分析,發(fā)現(xiàn)Omega軟件PSTM類型作業(yè),對運算節(jié)點的內(nèi)存延遲和內(nèi)存帶寬非常敏感,硬件依賴程度要求高。繼而,又對不同計算機架構的各自特點進行了仔細的研究,發(fā)現(xiàn)了Intel和AMD處理器平臺內(nèi)存訪問效率的差異:Intel處理器在訪問內(nèi)存數(shù)據(jù)時,必須經(jīng)過北橋芯片,以“CPU→北橋芯片→DIMM→北橋芯片→CPU”的方式完成一個周期的數(shù)據(jù)傳輸;而AMD處理器的特點是將內(nèi)存控制器集成,訪問內(nèi)存數(shù)據(jù)就簡化成了“CPU→DIMM→CPU”的傳輸方式,有效降低了數(shù)據(jù)訪問延遲時間,提高了數(shù)據(jù)傳輸效率,提高了CPU與內(nèi)存之間的傳輸帶寬[2]。因此,我們選擇在HP集群集成安裝Omega處理軟件,運行同一PSTM作業(yè)進行測試,發(fā)現(xiàn)并行節(jié)點CPU利用率負載不均現(xiàn)象和之前GeoCluster軟件在同一平臺運行的作業(yè)相比有明顯改變,每個并行節(jié)點的8個核心同時工作,平均利用率達到90%以上。
在經(jīng)過反復的分析、論證、測試后,制訂了HP集群集成移植安裝Omega軟件的技術方案,并把HP集群初始安裝的128節(jié)點的GeoCluster許可移植安裝在另一套IBM PC集群(Intel處理器平臺)的128節(jié)點上,又能使和其他384節(jié)點IBM集群組成512節(jié)點GeoCluster處理軟件統(tǒng)一集群應用,經(jīng)過這一調(diào)整,在HP集群安裝運行Omega軟件后,大幅度提升了集群的CPU利用率和處理系統(tǒng)的運算效率,PSTM并行作業(yè)工作效率提高了30%以上。
HP PC集群的I/O節(jié)點,在初始集成安裝時,由于技術局限,配置了雙千兆網(wǎng)絡接口卡綁定。在進行地震處理生產(chǎn)過程中,對I/O節(jié)點進行了精細化監(jiān)控,發(fā)現(xiàn)常常會出現(xiàn)網(wǎng)絡瓶頸和數(shù)據(jù)交換瓶頸,從而影響了HP集群的整體性能[3]。對此制訂了HP集群I/O節(jié)點網(wǎng)絡優(yōu)化升級方案,將10臺I/O節(jié)點的網(wǎng)絡接口卡從千兆升級到萬兆,網(wǎng)絡連接從Foundry RX16 10G交換機升級到Extreme BDX8 40G交換機。
主要技術方案如下(以3# I/O節(jié)點為例)[4]:
1)在3# I/O節(jié)點上安裝萬兆網(wǎng)接口板;
2)連接3# I/O節(jié)點到Extreme BDX8交換機;
3)檢查3# I/O節(jié)點內(nèi)核版本,驅(qū)動版本等安裝環(huán)境信息;
4)安裝源代碼RPM程序包;
5)生成二進制RPM程序包;
6)在3# I/O節(jié)點卸載當前系統(tǒng)老版本的網(wǎng)卡驅(qū)動程序;
7)在3# I/O節(jié)點的系統(tǒng)內(nèi)核中刪除老版本驅(qū)動程序;
8)安裝新網(wǎng)卡驅(qū)動RPM程序包;
9)配置萬兆網(wǎng)接口板IP地址,確認網(wǎng)絡連接正常。
在操作系統(tǒng)環(huán)境下,對HP集群I/O節(jié)點網(wǎng)絡調(diào)優(yōu)前后的性能[5],通過dd命令進行讀寫對比測試。測試結果見表1。
表1 操作系統(tǒng)下I/O節(jié)點網(wǎng)絡調(diào)優(yōu)前后讀寫性能對比測試表
測試環(huán)境:HP集群的2臺I/O節(jié)點(其中:3# I/O節(jié)點是萬兆連接到Extreme BDX8交換機、4# I/O節(jié)點是千兆連接到RX16交換機),同時寫9個40 GB的文件到9個云存的文件系統(tǒng)中。
測試命令[6]:#time dd if=/dev/zero of=/csdata*/file* bs=1024k count=40960
通過測試,在操作系統(tǒng)下,I/O節(jié)點在網(wǎng)絡調(diào)優(yōu)前后進行數(shù)據(jù)讀寫的性能對比,性能提高了109.3%。
在HP集群I/O節(jié)點運行Omega地震作業(yè)進行讀寫性能對比測試,測試結果見表2。
測試環(huán)境:HP集群的2臺I/O節(jié)點(其中:3# I/O節(jié)點是萬兆連接到Extreme BDX8交換機、4# I/O節(jié)點是千兆連接到RX16交換機),同時各運行8個讀寫數(shù)據(jù)的作業(yè)進行測試,其中讀數(shù)據(jù)在/csdata01文件系統(tǒng),寫數(shù)據(jù)在/csdata06文件系統(tǒng)。
表2 應用軟件下I/O節(jié)點網(wǎng)絡調(diào)優(yōu)前后作業(yè)性能對比測試表
通過測試,在應用軟件下,I/O節(jié)點在網(wǎng)絡調(diào)優(yōu)前后進行作業(yè)讀寫的性能對比,性能提高了31.8%。
HP PC集群,是目前大慶物探研究院處理生產(chǎn)的主要設備,共有128臺計算節(jié)點運行Omega軟件,這些計算節(jié)點不僅運行批量(并行)作業(yè),同時還要運行交互(單節(jié)點)作業(yè)。在實際生產(chǎn)中,由于處理任務集中,工期緊張,處理用戶競爭使用有限的計算節(jié)點資源,導致常規(guī)作業(yè)與偏移作業(yè)重疊占用計算節(jié)點,偏移作業(yè)被擠掉的現(xiàn)象時有發(fā)生,使得并行作業(yè)的運行效率明顯降低。而I/O節(jié)點在HP集群中通常只用于存儲管理、文件系統(tǒng)掛載服務和運行交互作業(yè),資源相對閑置[7]。經(jīng)過認真研究和仔細論證,將這些I/O節(jié)點進行優(yōu)化配置和程序開發(fā),使I/O節(jié)點既能運行交互作業(yè),又能獨立運行偏移并行作業(yè),還可以與其他計算節(jié)點混合參與偏移運算,緩解了集群資源緊張的問題[8]。
3.1.1 在I/O 節(jié)點上安裝omega應用軟件
1)開發(fā)/etc/security/limited.conf腳本程序文件;
2)創(chuàng)建omega日志目錄;
3)配置omega運行環(huán)境并啟動相關進程和服務。
3.1.2 配置OCI并行隊列
在管理節(jié)點上,編輯優(yōu)化兩個系統(tǒng)配置文件,使用1# I/O節(jié)點作為新加隊列oci_time8的主節(jié)點,2# I/O -10# I/O節(jié)點作為子節(jié)點。
1)編輯JSS_HOST_CONFIG文件;
2)編輯JSS_PARALLEL_CONFIG文件。
3.1.3 優(yōu)化配置I/O節(jié)點作為OCI時間偏移作業(yè)的子節(jié)點
編輯JSS_PARALLEL_CONFIG文件。
3.1.4 針對HP集群Omega應用軟件最耗系統(tǒng)機時的OCI類型作業(yè)進行系統(tǒng)優(yōu)化
1)每個主節(jié)點同時運行兩個OCI并行作業(yè) 在Omega應用軟件的OCI并行作業(yè)中,主節(jié)點的主要功能包括:給子節(jié)點分配任務、監(jiān)控子節(jié)點狀態(tài)、定時回收運算數(shù)據(jù)等,因此負載較輕。通過系統(tǒng)優(yōu)化和配置,使每個主節(jié)點可以同時運行兩個OCI并行作業(yè),在并行作業(yè)較多的情況下,提高了工作效率[9]。
2)每個子節(jié)點同時運行兩個并行作業(yè) 通過系統(tǒng)配置,使每個子節(jié)點可以同時運行兩個并行作業(yè)。當節(jié)點資源緊張時,可以同時運行測試線或者目標線時間偏移等占用系統(tǒng)資源較少的作業(yè),提高了節(jié)點資源的利用率。
3) OCI作業(yè)參數(shù)調(diào)優(yōu) Omega應用軟件OCI作業(yè)的內(nèi)存參數(shù),缺省為1 024 MB。由于HP128集群的每個計算節(jié)點配置了16 GB的內(nèi)存,通過測試,將該參數(shù)調(diào)整為2 048 MB,可以充分發(fā)揮節(jié)點的系統(tǒng)資源,提高作業(yè)的運行效率[10]。
通過HP集群I/O節(jié)點應用性能開發(fā)技術研究,運行Omega作業(yè)的CPU數(shù)量由244個增加到284個,增加了16.4%;同時運行的并行作業(yè)數(shù)量從原來的6個,增加到14個,增加了133.3%。使得有限的硬件資源得到了充分的利用,大大提高了Omega地震資料處理軟件的工作效率。
通過HP集群地震處理系統(tǒng)調(diào)優(yōu)技術研究,包括:應用軟件安裝集成優(yōu)化、并行隊列配置調(diào)優(yōu)、集群節(jié)點網(wǎng)絡接口優(yōu)化升級等技術,大大提高了集群工作效率和設備的利用率,HP集群整體運算效率提高30%以上,預計每年可以多完成200 km2以上的處理工作量,多創(chuàng)經(jīng)濟效益240萬元以上,保證有限的計算機資源得到了充分的利用。集群系統(tǒng)調(diào)優(yōu)技術可在石油、石化行業(yè)地震處理中心廣泛推廣,起到一定的指導和借鑒作用。