高劍剛 胡 晉 龔道永 方燕飛 劉 驍 何王全 金利峰 鄭 方 李宏亮
(國(guó)家并行計(jì)算機(jī)工程技術(shù)研究中心 北京 100190)
過(guò)去數(shù)十年,隨著半導(dǎo)體集成電路工藝與系統(tǒng)規(guī)模的不斷提升,高性能計(jì)算機(jī)計(jì)算性能得到了快速的發(fā)展.當(dāng)前,為了滿足氣象、生命科學(xué)、高能核物理等大規(guī)??茖W(xué)應(yīng)用對(duì)計(jì)算能力的超高需求,E級(jí)計(jì)算(1000PFLOPS)已成為高性能計(jì)算領(lǐng)域的下一個(gè)研制目標(biāo).然而,由于系統(tǒng)規(guī)模與復(fù)雜度的不斷增加,故障失效成為超級(jí)計(jì)算機(jī)系統(tǒng)運(yùn)行過(guò)程中的普遍事件,當(dāng)系統(tǒng)性能由P級(jí)(PFLOPS)向E級(jí)擴(kuò)展時(shí),系統(tǒng)保存全局檢查點(diǎn)的時(shí)間可能達(dá)到甚至超過(guò)系統(tǒng)的平均無(wú)故障時(shí)間(mean time between failures, MTBF)[1],可靠性墻[2]正成為構(gòu)建E級(jí)計(jì)算機(jī)系統(tǒng)所面臨的一項(xiàng)巨大挑戰(zhàn).
可靠性是指系統(tǒng)在規(guī)定的條件和規(guī)定的時(shí)間內(nèi),完成系統(tǒng)功能的能力,而可用性是指系統(tǒng)在規(guī)定的條件和時(shí)間區(qū)間內(nèi)處于可執(zhí)行規(guī)定功能狀態(tài)的能力,是可靠性和維修性的綜合體現(xiàn).超級(jí)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu)復(fù)雜、規(guī)模龐大,可靠性與可用性問(wèn)題日益嚴(yán)峻,必須研究采用可靠性增強(qiáng)技術(shù),提高系統(tǒng)基礎(chǔ)可靠性,同時(shí)必須有效采用故障容錯(cuò)技術(shù),提高系統(tǒng)在頻繁故障環(huán)境下的運(yùn)行效率,破解高性能計(jì)算機(jī)系統(tǒng)高可用難題.
神威太湖之光是世界首臺(tái)性能超過(guò)10億億次并行規(guī)模超千萬(wàn)核的超級(jí)計(jì)算機(jī).本文對(duì)神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)可靠性與可用性進(jìn)行全面的研究,分析高性能計(jì)算機(jī)失效特性與故障容錯(cuò)技術(shù),對(duì)于未來(lái)E級(jí)計(jì)算機(jī)系統(tǒng)高可靠與高可用設(shè)計(jì)具有重要的意義.
本文的主要貢獻(xiàn)有3個(gè)方面:
1)系統(tǒng)提出神威太湖之光超級(jí)計(jì)算機(jī)可靠性增強(qiáng)技術(shù),結(jié)合3種典型壽命周期分布,對(duì)系統(tǒng)故障間隔時(shí)間分布進(jìn)行數(shù)據(jù)擬合分析,建立神威太湖之光超級(jí)計(jì)算機(jī)失效分布模型,計(jì)算系統(tǒng)平均無(wú)故障時(shí)間;
2)設(shè)計(jì)提出故障預(yù)測(cè)、主動(dòng)遷移與任務(wù)局部降級(jí)主被動(dòng)容錯(cuò)技術(shù),建立神威太湖之光超級(jí)計(jì)算機(jī)多層次主被動(dòng)統(tǒng)一、軟硬件協(xié)同的容錯(cuò)系統(tǒng),結(jié)合系統(tǒng)應(yīng)用課題,具體分析多種容錯(cuò)技術(shù)的時(shí)間開(kāi)銷(xiāo)與容錯(cuò)效果;
3)以神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)可靠性與可用性研究分析為基礎(chǔ),提出未來(lái)E級(jí)計(jì)算機(jī)系統(tǒng)高可靠與高可用技術(shù)發(fā)展建議.
本文首先介紹高性能計(jì)算機(jī)系統(tǒng)可靠性與可用性研究領(lǐng)域相關(guān)工作,并概要描述神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)結(jié)構(gòu);隨后系統(tǒng)提出神威太湖之光超級(jí)計(jì)算機(jī)可靠性增強(qiáng)技術(shù)與主被動(dòng)容錯(cuò)技術(shù),建立神威太湖之光系統(tǒng)多層次主被動(dòng)統(tǒng)一、軟硬件協(xié)同的容錯(cuò)系統(tǒng);通過(guò)系統(tǒng)運(yùn)行故障統(tǒng)計(jì)與實(shí)際應(yīng)用測(cè)試,建立系統(tǒng)失效分布模型,計(jì)算系統(tǒng)平均無(wú)故障時(shí)間,分析多種容錯(cuò)技術(shù)的時(shí)間開(kāi)銷(xiāo)及容錯(cuò)效果;進(jìn)一步以此為基礎(chǔ),提出E級(jí)計(jì)算機(jī)系統(tǒng)高可靠與高可用技術(shù)發(fā)展建議,最后總結(jié)全文并提出后續(xù)工作方向.
為了提高高性能計(jì)算機(jī)系統(tǒng)的可靠性,業(yè)界研究采用了多種可靠性增強(qiáng)技術(shù).Summit,Sierra超級(jí)計(jì)算機(jī)InfiniBand高速網(wǎng)絡(luò)通過(guò)自適應(yīng)路由、冗余設(shè)計(jì)等技術(shù),提升互連網(wǎng)絡(luò)系統(tǒng)的可靠性[3].IBM Power處理器芯片設(shè)計(jì)支持指令重試恢復(fù)(instruction retry recovery, IRR)[4],通過(guò)定義狀態(tài)檢查點(diǎn),提供寄存器錯(cuò)誤恢復(fù)功能.糾錯(cuò)碼(error correcting code, ECC)是一種信息冗余技術(shù),通過(guò)附加冗余數(shù)據(jù)信息,實(shí)現(xiàn)錯(cuò)誤檢測(cè)與糾正.Cray XC系統(tǒng)Aries網(wǎng)絡(luò)芯片采用ECC與循環(huán)冗余碼(cyclic redundancy code, CRC),實(shí)現(xiàn)數(shù)據(jù)路徑有效防護(hù)[5].此外,硬件冗余設(shè)計(jì)也是高性能計(jì)算機(jī)系統(tǒng)提高可靠性的常用技術(shù),例如IBM Z系列服務(wù)器主機(jī)設(shè)計(jì)2套時(shí)鐘卡用于冗余備份[6],當(dāng)主卡發(fā)生故障時(shí),時(shí)鐘源可以動(dòng)態(tài)切換至從卡.超級(jí)計(jì)算機(jī)系統(tǒng)規(guī)模龐大,特別是計(jì)算節(jié)點(diǎn)與存儲(chǔ)系統(tǒng)器件數(shù)量顯著增加,對(duì)系統(tǒng)可靠性設(shè)計(jì)提出嚴(yán)峻挑戰(zhàn).本文結(jié)合神威太湖之光超級(jí)計(jì)算機(jī)組成結(jié)構(gòu),系統(tǒng)提出神威太湖之光系統(tǒng)可靠性增強(qiáng)技術(shù).
在可靠性分析方面,高性能計(jì)算機(jī)系統(tǒng)失效特性分析得到了業(yè)界廣泛關(guān)注.文獻(xiàn)[7]總結(jié)了高性能計(jì)算機(jī)不同系統(tǒng)組件的失效類(lèi)型并提供了系統(tǒng)整體失效率.文獻(xiàn)[8]分析了2臺(tái)典型P級(jí)超級(jí)計(jì)算機(jī)的故障來(lái)源及失效特性;文獻(xiàn)[9]則分析了異構(gòu)服務(wù)器系統(tǒng)失效經(jīng)驗(yàn)數(shù)據(jù)與統(tǒng)計(jì)特性;可靠性、可用性與可維護(hù)性(reliability availability serviceability, RAS)日志通常是記錄系統(tǒng)故障事件的主要來(lái)源,有大量文獻(xiàn)[10-13]基于RAS日志對(duì)Blue Gene P/L等高性能計(jì)算機(jī)系統(tǒng)開(kāi)展失效特性分析.RAS日志往往包含大量冗余信息,需要結(jié)合過(guò)濾算法濾除冗余信息,以便于進(jìn)行后續(xù)失效分析.本文根據(jù)系統(tǒng)故障統(tǒng)計(jì)數(shù)據(jù),開(kāi)展神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)失效特性分析,建立神威太湖之光系統(tǒng)失效分布模型.
為了實(shí)現(xiàn)高性能計(jì)算機(jī)系統(tǒng)高可用目標(biāo),業(yè)界提出了多種不同的故障容錯(cuò)技術(shù).保留恢復(fù)[14-16]是大規(guī)模并行計(jì)算中最常用的容錯(cuò)機(jī)制,通過(guò)狀態(tài)保存和恢復(fù)執(zhí)行進(jìn)行容錯(cuò).Rollback[17]和Rerun[18]則是通過(guò)重新加載和重新執(zhí)行來(lái)進(jìn)行恢復(fù).遷移模型[19-20]通過(guò)透明在線或離線的遷移執(zhí)行來(lái)增強(qiáng)超級(jí)計(jì)算機(jī)的容錯(cuò)能力.雙機(jī)接管[21]是在主設(shè)備無(wú)法工作時(shí)備用設(shè)備自動(dòng)接管系統(tǒng).進(jìn)程冗余[22]通過(guò)作業(yè)內(nèi)的冗余進(jìn)程副本來(lái)實(shí)現(xiàn)局部故障的容錯(cuò).算法容錯(cuò)[23]是通過(guò)增加數(shù)據(jù)編碼或存儲(chǔ)的冗余性來(lái)實(shí)現(xiàn)局部故障的容錯(cuò).各種容錯(cuò)方法都有自己的適用場(chǎng)景和優(yōu)勢(shì),然而,如何將各種手段有機(jī)融合為一體,同時(shí)給出面向具體應(yīng)用場(chǎng)景的特色化容錯(cuò)技術(shù),適時(shí)啟用最佳的容錯(cuò)方法,是一個(gè)需要迫切關(guān)注的焦點(diǎn).為此,本文基于神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)開(kāi)展實(shí)用化特色容錯(cuò)技術(shù)的研究,建立了多層次主被動(dòng)協(xié)同容錯(cuò)系統(tǒng),在此基礎(chǔ)上具體分析了故障預(yù)測(cè)、主動(dòng)遷移、任務(wù)局部降級(jí)等容錯(cuò)技術(shù)的實(shí)際開(kāi)銷(xiāo).
神威太湖之光超級(jí)計(jì)算機(jī)是由國(guó)家并行計(jì)算機(jī)工程技術(shù)研究中心于2015年研制完成的1臺(tái)超大規(guī)模并行計(jì)算機(jī).神威太湖之光超級(jí)計(jì)算機(jī)共安裝40 960個(gè)國(guó)產(chǎn)眾核處理器,全機(jī)運(yùn)算核心達(dá)到10 649 600個(gè),主存容量達(dá)到1.3PB,理論峰值計(jì)算性能及Linpack計(jì)算性能分別達(dá)到125.43PFLOPS與93.01PFLOPS.根據(jù)TOP500榜單[24],神威太湖之光于2016—2017年,連續(xù)4次排名世界第一.
Fig.1 Sunway TaihuLight supercomputer hardware system
神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)包括硬件系統(tǒng)、軟件系統(tǒng)與應(yīng)用系統(tǒng).其中硬件系統(tǒng)由運(yùn)算系統(tǒng)、互連網(wǎng)絡(luò)系統(tǒng)、維護(hù)診斷、外圍存儲(chǔ)、電源及冷卻系統(tǒng)組成,如圖1所示.軟件系統(tǒng)由國(guó)產(chǎn)眾核處理器基礎(chǔ)軟件、并行操作系統(tǒng)環(huán)境、高性能存儲(chǔ)管理系統(tǒng)、并行語(yǔ)言與編譯環(huán)境以及并行開(kāi)發(fā)環(huán)境組成.應(yīng)用系統(tǒng)包括應(yīng)用平臺(tái)基礎(chǔ)框架、行業(yè)應(yīng)用平臺(tái)和典型應(yīng)用軟件.
神威太湖之光超級(jí)計(jì)算機(jī)基于國(guó)產(chǎn)申威26010處理器構(gòu)建.申威26010是1款異構(gòu)眾核處理器,共包含260個(gè)運(yùn)算核心.申威26010眾核處理器采用片上計(jì)算陣列集群和分布式共享存儲(chǔ)相結(jié)合的異構(gòu)眾核體系結(jié)構(gòu).申威26010眾核處理器集成4個(gè)核組,每個(gè)核組包括運(yùn)算控制核心、運(yùn)算核心陣列和協(xié)議處理部件,其中運(yùn)算控制核心提供管理服務(wù)和計(jì)算功能,運(yùn)算核心陣列采用8×8陣列結(jié)構(gòu),集成64個(gè)運(yùn)算核心,提供主體計(jì)算能力,而協(xié)議處理部件用于處理數(shù)據(jù)一致性問(wèn)題.同時(shí),申威26010眾核處理器還提供DDR3(double data rate generation 3)存儲(chǔ)器接口、PCIE3.0(peripheral component interconnect express generation 3)通信接口、以太網(wǎng)及維護(hù)接口,支持高帶寬存儲(chǔ)訪問(wèn)與數(shù)據(jù)通信[8].
神威太湖之光超級(jí)計(jì)算機(jī)規(guī)模龐大,為實(shí)現(xiàn)系統(tǒng)長(zhǎng)時(shí)間穩(wěn)定運(yùn)行,需要協(xié)同系統(tǒng)軟硬件,通過(guò)可靠性分析、可靠性設(shè)計(jì)與可用性設(shè)計(jì)3個(gè)層次,全面提升系統(tǒng)可靠性與可用性.
可靠性分析基于系統(tǒng)組成單元功能邏輯關(guān)系,建立全機(jī)系統(tǒng)可靠性分析模型,采用元器件應(yīng)力分析法,開(kāi)展系統(tǒng)可靠性預(yù)計(jì)與評(píng)估,分析可靠性薄弱環(huán)節(jié),合理分配可靠性指標(biāo).可靠性設(shè)計(jì)針對(duì)系統(tǒng)關(guān)鍵部件及可靠性薄弱環(huán)節(jié),采取器件選型、冗余、熱設(shè)計(jì)等一系列可靠性增強(qiáng)技術(shù),改進(jìn)系統(tǒng)工藝與設(shè)計(jì),防止錯(cuò)誤發(fā)生,提高系統(tǒng)硬件基礎(chǔ)可靠性.可用性設(shè)計(jì)基于主被動(dòng)統(tǒng)一的容錯(cuò)思想,構(gòu)建高效容錯(cuò)控制體系,協(xié)同采用多種容錯(cuò)技術(shù),有效實(shí)現(xiàn)故障的檢測(cè)、診斷與恢復(fù),降低系統(tǒng)容錯(cuò)開(kāi)銷(xiāo),實(shí)現(xiàn)應(yīng)用級(jí)高可用目標(biāo).
神威太湖之光超級(jí)計(jì)算機(jī)基于體系化容錯(cuò)設(shè)計(jì)理念,在體系結(jié)構(gòu)、軟硬件系統(tǒng)、應(yīng)用系統(tǒng)等多個(gè)層次全面貫徹高可靠與高可用設(shè)計(jì)思想.遵循容錯(cuò)設(shè)計(jì)要求,優(yōu)化制定系統(tǒng)性能指標(biāo),達(dá)到系統(tǒng)功能實(shí)現(xiàn)與故障容錯(cuò)的深度融合.
Fig.2 Fault tolerance system of multi-level active and passive collaboration
系統(tǒng)采用以最小容錯(cuò)替換單元(minimum toler-ance replaceable unit, MTRU)設(shè)計(jì)為核心的故障局部化、輕量化容錯(cuò)設(shè)計(jì),綜合運(yùn)用故障隔離、替換與修復(fù)技術(shù),通過(guò)硬件系統(tǒng)、基礎(chǔ)支撐、容錯(cuò)控制等協(xié)同設(shè)計(jì),構(gòu)建主被動(dòng)統(tǒng)一、軟硬件協(xié)同的多層次容錯(cuò)系統(tǒng),如圖2所示.神威太湖之光通過(guò)系統(tǒng)維護(hù)、心跳檢測(cè)、容錯(cuò)數(shù)據(jù)庫(kù)構(gòu)建容錯(cuò)基礎(chǔ)支撐,通過(guò)容錯(cuò)控制臺(tái)、容錯(cuò)中間件和插件環(huán)境構(gòu)建容錯(cuò)控制系統(tǒng),通過(guò)系統(tǒng)和應(yīng)用層的多樣化容錯(cuò)提供多層次容錯(cuò)功能.在系統(tǒng)層提供故障預(yù)測(cè)、主動(dòng)遷移等主動(dòng)容錯(cuò)和消息重傳、作業(yè)回卷、局部降級(jí)、故障接管等被動(dòng)容錯(cuò)功能.在應(yīng)用層提供基于局部保留和透明遷移恢復(fù)的局部檢查點(diǎn)(local checkpoint, LC)與基于進(jìn)程冗余的冗余檢查點(diǎn)(redundancy checkpoint, RC)容錯(cuò)功能,并通過(guò)容錯(cuò)控制接口,將應(yīng)用級(jí)容錯(cuò)納入統(tǒng)一的自動(dòng)化容錯(cuò)系統(tǒng),實(shí)現(xiàn)系統(tǒng)感知的應(yīng)用級(jí)容錯(cuò).神威太湖之光系統(tǒng)通過(guò)軟硬件協(xié)同容錯(cuò)設(shè)計(jì)和多層次容錯(cuò)方法,提高多場(chǎng)景容錯(cuò)措施的覆蓋面,降低容錯(cuò)的影響范圍和容錯(cuò)開(kāi)銷(xiāo),提升系統(tǒng)的可用性.
神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)規(guī)模龐大,主機(jī)元器件數(shù)量達(dá)到億量級(jí),國(guó)產(chǎn)眾核處理器集成度高,性能指標(biāo)先進(jìn),存儲(chǔ)、網(wǎng)絡(luò)與電源冷卻子系統(tǒng)設(shè)計(jì)復(fù)雜,面臨嚴(yán)峻的可靠性挑戰(zhàn).為此,神威太湖之光在器件、部件、系統(tǒng)等不同層次,設(shè)計(jì)采用了一系列可靠性增強(qiáng)技術(shù),有效提升系統(tǒng)基礎(chǔ)可靠性.
申威26010眾核處理器是神威太湖之光超級(jí)計(jì)算機(jī)的核心器件.為保證芯片的穩(wěn)定可靠,提出基于余數(shù)域分配律計(jì)算結(jié)果在線校驗(yàn)技術(shù),建立片上一體化檢驗(yàn)和故障異常處理技術(shù)體系.運(yùn)算核心浮點(diǎn)乘加檢錯(cuò)部件基于余數(shù)校驗(yàn)碼原理,根據(jù)運(yùn)算主通路輸入,生成預(yù)期結(jié)果的余數(shù)碼,與運(yùn)算主通路輸出結(jié)果的余數(shù)碼進(jìn)行比較,支持浮點(diǎn)和整數(shù)多種運(yùn)算的實(shí)時(shí)在線檢錯(cuò).通過(guò)算法優(yōu)化與功能復(fù)用,降低時(shí)序及面積開(kāi)銷(xiāo),檢錯(cuò)覆蓋率達(dá)到93.33%.結(jié)合系統(tǒng)級(jí)校驗(yàn)體系與軟件容錯(cuò),可以有效檢測(cè)并糾正由芯片內(nèi)部噪聲或外部放射性粒子所引發(fā)的瞬態(tài)故障,從而提高眾核處理器的穩(wěn)定性與可靠性.
與Summit等超級(jí)計(jì)算機(jī)基于雙列直插內(nèi)存模塊(dual inline memory module, DIMM)構(gòu)建存儲(chǔ)系統(tǒng)所不同,神威太湖之光計(jì)算節(jié)點(diǎn)存儲(chǔ)系統(tǒng)選用DDR3存儲(chǔ)器顆粒,通過(guò)焊接貼裝于印制板上,避免因DIMM存儲(chǔ)條電氣與機(jī)械連接所引起的可靠性問(wèn)題.此外,申威26010眾核處理器存儲(chǔ)控制接口設(shè)計(jì)支持ECC,Chipkill,RS多種校驗(yàn)編碼,利用存儲(chǔ)器冗余數(shù)據(jù)位,實(shí)現(xiàn)單比特錯(cuò)自動(dòng)檢測(cè)與糾正,存儲(chǔ)器失效率可降低約80%[25],顯著提升計(jì)算節(jié)點(diǎn)存儲(chǔ)系統(tǒng)可靠性.
在互連網(wǎng)絡(luò)系統(tǒng)可靠性設(shè)計(jì)中,提出泛樹(shù)網(wǎng)絡(luò)結(jié)構(gòu)與雙軌聯(lián)動(dòng)高效高可靠通信機(jī)制,網(wǎng)絡(luò)芯片設(shè)計(jì)冗余互連端口,有效提升互連網(wǎng)絡(luò)容錯(cuò)能力.通過(guò)采用高速信號(hào)傳輸技術(shù),14 Gbps高速串行鏈路傳輸誤碼率降低至10-15量級(jí),結(jié)合前向糾錯(cuò)編碼技術(shù),實(shí)現(xiàn)網(wǎng)絡(luò)數(shù)據(jù)不間斷穩(wěn)定可靠傳輸.
冷卻散熱是影響超級(jí)計(jì)算機(jī)系統(tǒng)可靠性的一個(gè)關(guān)鍵因素,隨著器件結(jié)溫增加,元器件失效率呈指數(shù)級(jí)增長(zhǎng)[26].由電子設(shè)備可靠性預(yù)計(jì)手冊(cè)[27],半導(dǎo)體集成電路每運(yùn)行百萬(wàn)小時(shí)失效率λ可以估算得到:
λ=(C1πTπV+(C2+C3)πE)πQπK,
(1)
其中,πT為溫度應(yīng)力系數(shù),取決于電路工藝和結(jié)溫,πV,πE,πQ,πK分別為電壓、環(huán)境、質(zhì)量與成熟度系數(shù),C1,C2為電路復(fù)雜度失效率,C3為封裝復(fù)雜度失效率.申威26010眾核處理器設(shè)計(jì)選用低熱阻封裝,主機(jī)系統(tǒng)采用間接液冷散熱,運(yùn)算插件冷板設(shè)計(jì)立體流道布局結(jié)構(gòu),結(jié)合流場(chǎng)均衡與剛?cè)釓?fù)合表貼接觸技術(shù),將眾核處理器芯片結(jié)溫有效控制在50℃量級(jí),顯著提升眾核處理器運(yùn)行穩(wěn)定性,進(jìn)而提高系統(tǒng)整體可靠性.
系統(tǒng)廣泛采用冗余設(shè)計(jì)機(jī)制,外圍存儲(chǔ)采用成熟的冗余獨(dú)立磁盤(pán)陣列,冷卻與電源系統(tǒng)的冷水機(jī)組、水泵、空調(diào)、電源轉(zhuǎn)換模塊等均采取冗余設(shè)計(jì),避免單點(diǎn)故障引發(fā)系統(tǒng)失效.同時(shí),廣泛支持熱拔插與在線維修,實(shí)現(xiàn)系統(tǒng)故障快速恢復(fù),有效提升系統(tǒng)可靠性與可維性.
超級(jí)計(jì)算機(jī)系統(tǒng)規(guī)模龐大、應(yīng)用課題類(lèi)型多樣、程序模型千差萬(wàn)別,容錯(cuò)需求差異很大.為此神威太湖之光集合應(yīng)用容錯(cuò)需求,提出故障預(yù)測(cè)、主動(dòng)遷移與局部任務(wù)降級(jí)等主被動(dòng)容錯(cuò)技術(shù),通過(guò)協(xié)同多種容錯(cuò)技術(shù),提升系統(tǒng)可用性.
3.4.1 故障預(yù)測(cè)
神威太湖之光采用基于滑動(dòng)時(shí)間窗口和準(zhǔn)確度約束的數(shù)據(jù)關(guān)聯(lián)分析方法,對(duì)大規(guī)模系統(tǒng)實(shí)時(shí)和歷史數(shù)據(jù)進(jìn)行多維分析,深入挖掘同源多次故障、非故障多維特征數(shù)據(jù)與故障之間的相關(guān)性,提取故障發(fā)生的分布規(guī)律,結(jié)合實(shí)時(shí)故障驗(yàn)證,建立多層次系統(tǒng)資源故障失效時(shí)間分布模型,指導(dǎo)進(jìn)行故障預(yù)測(cè)分析.考慮到系統(tǒng)在生命周期不同階段、不同負(fù)載、不同應(yīng)用場(chǎng)景下的故障概率變化情況,采用機(jī)器學(xué)習(xí)方法對(duì)故障預(yù)測(cè)模型進(jìn)行周期性最優(yōu)近似求解并持續(xù)迭代,優(yōu)化調(diào)整預(yù)測(cè)模型參數(shù),提高故障預(yù)測(cè)準(zhǔn)確率.故障預(yù)測(cè)主要考慮關(guān)鍵因素如表1所示:
Table 1 Key Factors for Failure Prediction
在預(yù)測(cè)結(jié)果的計(jì)算過(guò)程中,主要參考了各種關(guān)鍵因素的故障歷史、臨近時(shí)間段內(nèi)的狀態(tài)數(shù)據(jù)、挖掘獲得的合理閾值和迭代求解得到的系數(shù).故障預(yù)測(cè):
Ewarning=
(2)
其中,Ewarning為通過(guò)預(yù)測(cè)函數(shù)f(x)得到的預(yù)測(cè)結(jié)果即預(yù)警事件,g(x)表示基于關(guān)聯(lián)分析建模得到的模型函數(shù),{Fxy}表示時(shí)間區(qū)間內(nèi)的故障集合,{Txy}表示時(shí)間區(qū)間內(nèi)的狀態(tài)數(shù)據(jù)集合,{Thxy}表示閾值參數(shù),{Wxy}表示求解系數(shù),Sx表示取值集合,C,M,N,T,P,L分別代表處理器、存儲(chǔ)器、網(wǎng)絡(luò)接口、溫度、電源和負(fù)載.系統(tǒng)運(yùn)行過(guò)程中,持續(xù)采樣狀態(tài)數(shù)據(jù),根據(jù)預(yù)測(cè)模型函數(shù)計(jì)算預(yù)測(cè)結(jié)果,一旦相關(guān)因素的狀態(tài)數(shù)據(jù)滿足故障概率條件則形成故障預(yù)警,觸發(fā)并驅(qū)動(dòng)容錯(cuò)系統(tǒng)進(jìn)行容錯(cuò)決策,并擇機(jī)啟動(dòng)策略化的主動(dòng)容錯(cuò).在實(shí)際系統(tǒng)中,支持處理器核心、存儲(chǔ)器、網(wǎng)絡(luò)接口等主要部件的故障預(yù)測(cè).
3.4.2 主動(dòng)遷移容錯(cuò)
主動(dòng)遷移是一種基于預(yù)警事件驅(qū)動(dòng)的透明化容錯(cuò)技術(shù),適用于各種類(lèi)型的應(yīng)用,對(duì)提高系統(tǒng)的可用性非常重要.與事務(wù)處理及數(shù)據(jù)只讀型應(yīng)用不同,高性能計(jì)算遷移容錯(cuò)面臨著多進(jìn)程間的共享內(nèi)存、消息通信、文件處理等復(fù)雜耦合關(guān)系,控制復(fù)雜.神威太湖之光針對(duì)主動(dòng)預(yù)警容錯(cuò)需求,設(shè)計(jì)實(shí)現(xiàn)了面向高性能計(jì)算消息模型特征的局部預(yù)警主動(dòng)遷移容錯(cuò)技術(shù),采用凍結(jié)—遷移—恢復(fù)設(shè)計(jì)思想,其控制原理如圖3所示:
Fig.3 Active migration fault tolerance
基本算法如算法1所述:
算法1.基于耦合識(shí)別的節(jié)點(diǎn)遷移算法.
輸入:節(jié)點(diǎn)故障預(yù)警事件E、預(yù)警處理策略P;
輸出:節(jié)點(diǎn)遷移結(jié)果result.
① 判斷預(yù)警事件所影響的作業(yè)J和節(jié)點(diǎn)N;
② 代價(jià)收益評(píng)估,確定最佳容錯(cuò)策略P;
③ 申請(qǐng)冗余資源R;
④ 驅(qū)趕J中的消息和IO;
⑤ 將緩存數(shù)據(jù)刷新到主存;
⑥ 識(shí)別用戶數(shù)據(jù)區(qū)UD和關(guān)鍵系統(tǒng)數(shù)據(jù)區(qū)SD;
⑦ 凍結(jié)作業(yè)J;
⑧ 將節(jié)點(diǎn)N上的UD和SD遷移到R上;
⑨ 重構(gòu)作業(yè)J的運(yùn)行控制環(huán)境;
⑩ 恢復(fù)作業(yè)J;
在遷移算法中,通過(guò)動(dòng)態(tài)分析節(jié)點(diǎn)內(nèi)存數(shù)據(jù)的訪問(wèn)特征,識(shí)別用戶數(shù)據(jù)區(qū)、關(guān)鍵系統(tǒng)數(shù)據(jù)區(qū)和其他數(shù)據(jù)區(qū),確保只遷移用戶數(shù)據(jù)區(qū)和關(guān)鍵系統(tǒng)數(shù)據(jù)區(qū)空間,降低遷移數(shù)據(jù)量和開(kāi)銷(xiāo).通過(guò)作業(yè)運(yùn)行階段和多樣化容錯(cuò)特征識(shí)別,進(jìn)行容錯(cuò)代價(jià)和收益的評(píng)估,從而選擇最合適的容錯(cuò)手段.從策略和手段上降低開(kāi)銷(xiāo),提升實(shí)用性.
3.4.3 局部降級(jí)容錯(cuò)
消息重傳、作業(yè)回卷、故障接管等被動(dòng)容錯(cuò)是故障發(fā)生后的補(bǔ)救型容錯(cuò),其目的是減少故障的影響.高性能計(jì)算系統(tǒng)運(yùn)行并行應(yīng)用程序期間,一旦發(fā)生本地資源故障,通常只能取消作業(yè).否則不僅不能獲得正確的結(jié)果,而且作業(yè)也不能成功退出.動(dòng)態(tài)任務(wù)分區(qū)是一種應(yīng)用廣泛的程序模型,它通常有一個(gè)主進(jìn)程和其他從進(jìn)程.主進(jìn)程動(dòng)態(tài)地將任務(wù)分配給從進(jìn)程.任務(wù)完成后,從進(jìn)程繼續(xù)向主進(jìn)程申請(qǐng)新任務(wù),主從進(jìn)程通過(guò)消息相互交互.針對(duì)這種應(yīng)用特點(diǎn),在動(dòng)態(tài)任務(wù)劃分的基礎(chǔ)上,神威太湖之光提出一種特殊的局部降級(jí)容錯(cuò)技術(shù).當(dāng)故障發(fā)生時(shí),對(duì)故障資源和任務(wù)過(guò)程進(jìn)行動(dòng)態(tài)切割,重構(gòu)運(yùn)行環(huán)境.剩余的資源和任務(wù)進(jìn)程可以繼續(xù)執(zhí)行,而不會(huì)導(dǎo)致任務(wù)丟失.當(dāng)從進(jìn)程資源失敗時(shí),主進(jìn)程將所有未完成及后續(xù)任務(wù)重新分配給其他進(jìn)程,終止從進(jìn)程并釋放故障資源.當(dāng)主進(jìn)程失敗時(shí),從進(jìn)程通過(guò)投票算法選舉一個(gè)新的主進(jìn)程來(lái)替換任務(wù)分配功能.局部降級(jí)后,底層運(yùn)行時(shí)重新映射剩余的資源和進(jìn)程列表,重新構(gòu)建作業(yè)環(huán)境,以確保作業(yè)能夠連續(xù)運(yùn)行并成功退出,如圖4所示.
Fig.4 Job local degradation
Fig.5 Task distribution model
本文利用神威太湖之光系統(tǒng)運(yùn)行以來(lái)故障統(tǒng)計(jì)數(shù)據(jù)進(jìn)行失效分析.神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)中發(fā)生故障的部件主要有計(jì)算節(jié)點(diǎn)(包含CPU與DDR3存儲(chǔ)器)、互連網(wǎng)絡(luò)、維護(hù)診斷子系統(tǒng)、外圍存儲(chǔ)、電源與冷卻子系統(tǒng).故障統(tǒng)計(jì)數(shù)據(jù)包含了故障發(fā)生的時(shí)間、故障發(fā)生的物理位置、故障類(lèi)型以及故障場(chǎng)景等多種信息.由于故障數(shù)據(jù)內(nèi)可能包含相同時(shí)刻相同故障類(lèi)型的重復(fù)記錄,還可能包含因系統(tǒng)配置或用戶代碼所引發(fā)的警告信息[28],因此在對(duì)故障統(tǒng)計(jì)數(shù)據(jù)進(jìn)行數(shù)據(jù)整理預(yù)處理后開(kāi)展分析.
根據(jù)故障類(lèi)型及其影響程度,故障可以進(jìn)一步分為非致命性故障與致命性故障2類(lèi).非致命性故障可以自動(dòng)通過(guò)硬件冗余資源或軟件容錯(cuò)技術(shù)進(jìn)行修復(fù),不會(huì)導(dǎo)致系統(tǒng)任務(wù)中斷.而致命性故障則會(huì)導(dǎo)致系統(tǒng)失效,必須及時(shí)進(jìn)行修復(fù).本文主要對(duì)致命性故障及其所引發(fā)的系統(tǒng)失效進(jìn)行分析.
由系統(tǒng)故障統(tǒng)計(jì)數(shù)據(jù),系統(tǒng)部件失效分布餅圖如圖6所示.可以看出,計(jì)算節(jié)點(diǎn)失效最高,占比達(dá)到58.92%.針對(duì)神威太湖之光超級(jí)計(jì)算機(jī)計(jì)算節(jié)點(diǎn),進(jìn)一步分析其失效原因,計(jì)算節(jié)點(diǎn)失效主要為眾核處理器故障和DDR3存儲(chǔ)器故障,眾核處理器故障包括運(yùn)算控制核心故障、運(yùn)算核心陣列故障、協(xié)議處理部件故障、存儲(chǔ)控制器故障、片上網(wǎng)絡(luò)故障以及系統(tǒng)接口故障,而DDR3存儲(chǔ)器則主要表現(xiàn)為多比特錯(cuò)(multiple bit error, MBE).顯然,配置眾核處理器與大量DDR3存儲(chǔ)器的計(jì)算節(jié)點(diǎn)作為系統(tǒng)核心計(jì)算部件,是神威太湖之光硬件系統(tǒng)失效的主要來(lái)源,對(duì)于系統(tǒng)可靠性具有最重要的影響作用.其次為電源子系統(tǒng),由于全機(jī)電源板及電源器件數(shù)量眾多,因此電源子系統(tǒng)失效也較為可觀,其失效占比達(dá)到18.60%.維護(hù)診斷子系統(tǒng)失效占比為12.79%.相對(duì)而言,互連網(wǎng)絡(luò)、外圍存儲(chǔ)與冷卻子系統(tǒng)受益于高效的網(wǎng)絡(luò)容錯(cuò)機(jī)制與廣泛的冗余配置,具有較高的可靠性,其失效占比分別為6.20%,1.94%,1.55%.
Fig.6 Failure distribution of Sunway TaihuLight system
進(jìn)一步來(lái)分析神威太湖之光系統(tǒng)故障間隔時(shí)間分布特性,設(shè)T為系統(tǒng)故障發(fā)生時(shí)間集合,即
T={t1,t2,…,tn},
(3)
則故障間隔時(shí)間Tbetween failures可以表征為
Tbetween failures={ti+1-ti},i=1,2,…,n-1.
(4)
由系統(tǒng)故障發(fā)生時(shí)間可以計(jì)算得到故障累計(jì)時(shí)間分布函數(shù)F(t),則神威太湖之光系統(tǒng)可靠度R(t)可以表征為
R(t)=1-F(t).
(5)
指數(shù)分布、對(duì)數(shù)正態(tài)分布與韋布爾分布作為3種典型壽命周期分布模型[29],在數(shù)據(jù)統(tǒng)計(jì)分析領(lǐng)域得到了廣泛的應(yīng)用,其失效概率密度分布函數(shù)f(t)如表2所示:
Table 2 Typical Life Cycle Distribution Probability Density Function
本文選擇這3種壽命周期分布模型,對(duì)神威太湖之光系統(tǒng)故障間隔時(shí)間分布進(jìn)行數(shù)據(jù)擬合分析.壽命周期分布具體數(shù)值可由最大似然估計(jì)得到,進(jìn)而與故障累計(jì)時(shí)間經(jīng)驗(yàn)數(shù)據(jù)進(jìn)行擬合分析.隨后,利用K-S(Kolmogorov Smirnov)檢驗(yàn)來(lái)評(píng)估壽命周期分布模型與經(jīng)驗(yàn)數(shù)據(jù)之間的擬合度.K-S檢驗(yàn)產(chǎn)生的p值用于表征統(tǒng)計(jì)數(shù)據(jù)的擬合度.一般而言,當(dāng)p>0.05時(shí),表示經(jīng)驗(yàn)數(shù)據(jù)與壽命周期分布具有較好的擬合度,可以認(rèn)為經(jīng)驗(yàn)數(shù)據(jù)服從壽命周期分布模型,當(dāng)p<0.05時(shí),則表示經(jīng)驗(yàn)數(shù)據(jù)與壽命周期分布不具有相關(guān)性.
Fig.7 Comparison of empirical and three typical life cycle distribution CDF
系統(tǒng)故障經(jīng)驗(yàn)累積分布函數(shù)(cumulative distri-bution function, CDF)與指數(shù)分布、對(duì)數(shù)正態(tài)分布及韋布爾分布對(duì)比如圖7所示,圖7中實(shí)線為由故障統(tǒng)計(jì)數(shù)據(jù)得到的神威太湖之光系統(tǒng)故障經(jīng)驗(yàn)累積分布函數(shù)曲線,虛線分別為數(shù)據(jù)擬合得到的指數(shù)、對(duì)數(shù)正態(tài)、韋布爾累積分布函數(shù)曲線.
圖8進(jìn)一步對(duì)比了神威太湖之光系統(tǒng)故障經(jīng)驗(yàn)數(shù)據(jù)直方圖與指數(shù)、對(duì)數(shù)正態(tài)及韋布爾概率密度分布函數(shù)(probability density function, PDF)曲線.在顯著性水平為0.05的條件下,指數(shù)、對(duì)數(shù)正態(tài)與韋布爾分布K-S檢驗(yàn)p值分別為0.1298,0.3201,0.0845,K-S假設(shè)檢驗(yàn)成立.可以看出,指數(shù)、對(duì)數(shù)正態(tài)與韋布爾3種典型壽命周期分布模型與神威太湖之光系統(tǒng)故障經(jīng)驗(yàn)數(shù)據(jù)均得到了較好的擬合,而對(duì)數(shù)正態(tài)分布擬合程度最好.通過(guò)對(duì)故障數(shù)據(jù)的擬合分析,基于擬合度最佳的對(duì)數(shù)正態(tài)分布,建立神威太湖之光超級(jí)計(jì)算機(jī)失效分布模型.由失效分布模型參數(shù),計(jì)算對(duì)數(shù)正態(tài)分布的數(shù)學(xué)期望值,得到系統(tǒng)平均無(wú)故障時(shí)間MTBF為11.84 h.此外,經(jīng)最大似然估計(jì),韋布爾分布形狀參數(shù)m=1.0712(近似為1,此時(shí)韋布爾分布等同于指數(shù)分布),表明神威太湖之光系統(tǒng)基本處于可靠性浴盆曲線的偶然失效期,系統(tǒng)運(yùn)行穩(wěn)定,失效率較低.
Fig.8 Comparison of histogram and three typical life cycle distribution PDF
對(duì)神威太湖之光超級(jí)計(jì)算機(jī)運(yùn)行以來(lái)系統(tǒng)容錯(cuò)數(shù)據(jù)庫(kù)中的容錯(cuò)歷史日志進(jìn)行統(tǒng)計(jì)分析,數(shù)據(jù)表明業(yè)務(wù)運(yùn)行期間,系統(tǒng)故障預(yù)測(cè)平均準(zhǔn)確率約70%,其中53%的預(yù)測(cè)故障進(jìn)行了主動(dòng)遷移容錯(cuò),剩余17%的預(yù)測(cè)故障區(qū)別不同情況,分別采用了主動(dòng)接管、主動(dòng)避錯(cuò)等方法避免潛在故障中斷課題運(yùn)行.
使用神威太湖之光經(jīng)典流體力學(xué)應(yīng)用Open-Foam進(jìn)行測(cè)試,主動(dòng)遷移過(guò)程的時(shí)間開(kāi)銷(xiāo)如圖9所示.每次遷移一個(gè)節(jié)點(diǎn),每個(gè)節(jié)點(diǎn)內(nèi)存32 GB.由于單個(gè)節(jié)點(diǎn)的內(nèi)存大小固定,網(wǎng)絡(luò)帶寬不變,數(shù)據(jù)遷移的時(shí)間基本沒(méi)有變化.隨著作業(yè)規(guī)模的增加,消息和IO一致性驅(qū)動(dòng)器和凍結(jié)處理的時(shí)間開(kāi)銷(xiāo)也會(huì)增加,但是總時(shí)間開(kāi)銷(xiāo)仍然在可接受的范圍內(nèi).通過(guò)采取主動(dòng)遷移容錯(cuò),提前干預(yù)處理,將故障預(yù)測(cè)節(jié)點(diǎn)上的任務(wù)進(jìn)程遷移到健康節(jié)點(diǎn)上,以較小的遷移容錯(cuò)開(kāi)銷(xiāo)為代價(jià),有效避免了因節(jié)點(diǎn)瞬間故障導(dǎo)致的程序中斷損失,該容錯(cuò)過(guò)程對(duì)系統(tǒng)可見(jiàn),但對(duì)應(yīng)用完全透明,從而提高了應(yīng)用可感知的系統(tǒng)平均無(wú)故障時(shí)間.統(tǒng)計(jì)分析系統(tǒng)容錯(cuò)數(shù)據(jù)庫(kù)中的歷史遷移容錯(cuò)日志,得到應(yīng)用程序感知到的系統(tǒng)平均無(wú)故障時(shí)間為24.2 h,相對(duì)系統(tǒng)平均無(wú)故障時(shí)間,提升約1倍.
Fig.9 Active migration fault tolerance time overhead
Fig.10 Job local degradation fault tolerance time overhead
對(duì)于因預(yù)測(cè)失敗而產(chǎn)生的瞬態(tài)故障,通過(guò)自動(dòng)容錯(cuò)評(píng)估決策,按需采用任務(wù)局部降級(jí)與作業(yè)回卷容錯(cuò).任務(wù)局部降級(jí)可以應(yīng)用于具有動(dòng)態(tài)任務(wù)分配屬性的多個(gè)應(yīng)用程序.局部降級(jí)模型本質(zhì)上只涉及多節(jié)點(diǎn)間具有良好可擴(kuò)展性的協(xié)同控制,并不存在復(fù)雜的大量數(shù)據(jù)遷移過(guò)程.經(jīng)測(cè)試,典型情況下神威太湖之光任務(wù)局部降級(jí)時(shí)間開(kāi)銷(xiāo)如圖10所示.可以看出,局部降級(jí)容錯(cuò)時(shí)間開(kāi)銷(xiāo)小,且對(duì)作業(yè)規(guī)模不敏感,是一種非常有效的被動(dòng)容錯(cuò)技術(shù).通過(guò)采取被動(dòng)容錯(cuò),雖然沒(méi)有降低系統(tǒng)應(yīng)用可感知的平均無(wú)故障時(shí)間,但有效控制了故障的影響范圍,使課題可以帶錯(cuò)繼續(xù)運(yùn)行并得到正確結(jié)果,減少了因系統(tǒng)故障而增加的應(yīng)用課題回卷執(zhí)行時(shí)間.統(tǒng)計(jì)分析系統(tǒng)數(shù)據(jù)庫(kù)中的歷史降級(jí)容錯(cuò)日志,可以發(fā)現(xiàn),針對(duì)可降級(jí)容錯(cuò)課題,局部降低容錯(cuò)可將平均單個(gè)節(jié)點(diǎn)故障導(dǎo)致的應(yīng)用課題容錯(cuò)損失(因降級(jí)增加的執(zhí)行時(shí)間相比因回卷容錯(cuò)增加的執(zhí)行時(shí)間)降低90%以上.
因此,神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)基于多層次主被動(dòng)統(tǒng)一的容錯(cuò)控制體系,通過(guò)采用面向不同應(yīng)用場(chǎng)景的多樣化容錯(cuò)技術(shù),實(shí)現(xiàn)了融合故障預(yù)測(cè)、評(píng)估決策、容錯(cuò)控制于一體的全流程自動(dòng)按需容錯(cuò),降低容錯(cuò)時(shí)間開(kāi)銷(xiāo),有效提升神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)的可用性水平.
不難預(yù)測(cè),未來(lái)E級(jí)計(jì)算機(jī)將對(duì)系統(tǒng)可靠性與可用性提出極高的要求.這里,本文以神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)可靠性與可用性研究分析為基礎(chǔ),分別從硬件和軟件2個(gè)層次,提出未來(lái)E級(jí)計(jì)算機(jī)系統(tǒng)高可靠與高可用技術(shù)發(fā)展建議.
5.1.1 高密度組裝
顯而易見(jiàn),系統(tǒng)元器件數(shù)量越多,系統(tǒng)整體基礎(chǔ)可靠性越低.神威太湖之光超級(jí)計(jì)算機(jī)采用3維高密度組裝,每個(gè)運(yùn)算機(jī)倉(cāng)共安裝1 024個(gè)CPU,組裝密度達(dá)到世界領(lǐng)先的523.10TFLOPS/m3.得益于高密度組裝,神威太湖之光超級(jí)計(jì)算機(jī)運(yùn)算機(jī)倉(cāng)數(shù)量?jī)H40個(gè),系統(tǒng)部件及元器件數(shù)量得到有效縮減,十分有助于提升系統(tǒng)的整體可靠性.E級(jí)計(jì)算機(jī)系統(tǒng)規(guī)模不斷擴(kuò)大,迫切需要在封裝、PCB板、背板等不同層次廣泛應(yīng)用高密度組裝技術(shù),提高系統(tǒng)集成度,平衡機(jī)倉(cāng)規(guī)模數(shù)量,這不僅有利于提升系統(tǒng)基礎(chǔ)可靠性,同時(shí)對(duì)于系統(tǒng)硬件設(shè)計(jì)實(shí)現(xiàn)以及可擴(kuò)展性都具有極其重要的作用.
5.1.2 高效冷卻
隨著高性能處理器功耗與系統(tǒng)規(guī)模的不斷提升,E級(jí)計(jì)算機(jī)系統(tǒng)能耗預(yù)計(jì)將達(dá)到幾十至上百M(fèi)W量級(jí),系統(tǒng)冷卻成本和使用成本顯著增加,同時(shí)對(duì)系統(tǒng)穩(wěn)定性與可靠性提出極大挑戰(zhàn).當(dāng)前以相變冷卻、2.5/3D封裝微通道冷卻等為代表的新型高效冷卻技術(shù),對(duì)于降低計(jì)算節(jié)點(diǎn)眾核處理器等核心器件芯片結(jié)溫,提高計(jì)算節(jié)點(diǎn)與主機(jī)系統(tǒng)可靠性與可用性具有重要的作用,在未來(lái)E級(jí)計(jì)算機(jī)系統(tǒng)中具有廣闊的應(yīng)用前景.
5.1.3 主存防護(hù)
計(jì)算節(jié)點(diǎn)存儲(chǔ)系統(tǒng)故障失效在神威太湖之光硬件系統(tǒng)失效中占據(jù)了較高的比重.隨著E級(jí)計(jì)算機(jī)系統(tǒng)訪存帶寬與主存容量需求的不斷提高,存儲(chǔ)系統(tǒng)元器件數(shù)量與規(guī)模也不斷增加,計(jì)算節(jié)點(diǎn)主存防護(hù)對(duì)于提升系統(tǒng)整體可靠性至關(guān)重要.基于序列模式挖掘的主存故障特征識(shí)別方法[30],通過(guò)建立計(jì)算節(jié)點(diǎn)主存失效序列規(guī)則模型,從而實(shí)現(xiàn)對(duì)存儲(chǔ)系統(tǒng)故障特別是MBE故障的有效預(yù)測(cè),是一種具有啟發(fā)性的技術(shù)發(fā)展思路.此外,GPU+高帶寬存儲(chǔ)(high bandwidth memory, HBM)已成為化解E級(jí)計(jì)算訪存墻問(wèn)題的主流解決方案.HBM顆粒針對(duì)數(shù)據(jù)與命令信號(hào)設(shè)計(jì)了冗余微凸點(diǎn),可以在發(fā)生故障時(shí),為HBM堆疊芯片提供冗余互連通道,提高芯片可靠性.未來(lái)需要研究采用更為有效的故障避錯(cuò)與容錯(cuò)技術(shù),構(gòu)建穩(wěn)定魯棒的存儲(chǔ)系統(tǒng),確保E級(jí)計(jì)算機(jī)系統(tǒng)穩(wěn)定可靠運(yùn)行.
5.2.1 輕量級(jí)修復(fù)技術(shù)
輕量級(jí)修復(fù)是一種能夠在環(huán)境發(fā)生軟硬件故障時(shí)快速恢復(fù)的技術(shù).局部硬件復(fù)位是在計(jì)算核、計(jì)算陣列等局部硬件故障時(shí)軟件驅(qū)動(dòng)的快速修復(fù)方法,通過(guò)局部復(fù)位來(lái)避免全芯片復(fù)位,以降低系統(tǒng)開(kāi)銷(xiāo),對(duì)于網(wǎng)絡(luò)設(shè)備或端口故障,也可以采用類(lèi)似的快速化局部復(fù)位修復(fù)機(jī)制.在發(fā)生軟環(huán)境故障或異常時(shí),則可以通過(guò)虛擬機(jī)或容器的重置與接管來(lái)避免硬件初始化的開(kāi)銷(xiāo),從而快速將軟件環(huán)境恢復(fù)至可用狀態(tài).
5.2.2 應(yīng)用級(jí)容錯(cuò)算法與模型
基于數(shù)據(jù)冗余分布的新型容錯(cuò)算法[31]與模型、基于進(jìn)程和線程級(jí)的任務(wù)冗余機(jī)制等是近年來(lái)發(fā)展迅速的應(yīng)用級(jí)局部故障容錯(cuò)技術(shù),值得密切關(guān)注.同時(shí),針對(duì)大規(guī)模系統(tǒng)中廣泛使用的保留恢復(fù)技術(shù)容錯(cuò)成本高、效率低的問(wèn)題,業(yè)界研究提出了基于多混合存儲(chǔ)介質(zhì)和數(shù)據(jù)壓縮算法等多級(jí)檢查點(diǎn)技術(shù),有效降低容錯(cuò)開(kāi)銷(xiāo),提高容錯(cuò)算法與模型的實(shí)用性.
故障失效成為高性能計(jì)算機(jī)系統(tǒng)的普遍事件.本文針對(duì)神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)可靠性與可用性開(kāi)展全面的研究分析.系統(tǒng)提出神威太湖之光超級(jí)計(jì)算機(jī)可靠性增強(qiáng)技術(shù),分析系統(tǒng)失效與故障間隔時(shí)間分布特性,開(kāi)展系統(tǒng)故障經(jīng)驗(yàn)數(shù)據(jù)與典型壽命周期分布數(shù)據(jù)擬合度分析.系統(tǒng)故障統(tǒng)計(jì)數(shù)據(jù)表明:計(jì)算節(jié)點(diǎn)是神威太湖之光超級(jí)計(jì)算機(jī)硬件系統(tǒng)失效的主要來(lái)源,對(duì)系統(tǒng)可靠性具有最重要的影響作用.由最大似然估計(jì)與K-S檢驗(yàn)可以看出,對(duì)數(shù)正態(tài)分布與系統(tǒng)故障經(jīng)驗(yàn)數(shù)據(jù)取得了較好的擬合度,進(jìn)而建立神威太湖之光系統(tǒng)失效分布模型,通過(guò)計(jì)算故障間隔時(shí)間的數(shù)學(xué)期望值,得到系統(tǒng)平均無(wú)故障時(shí)間.設(shè)計(jì)提出了故障預(yù)測(cè)、主動(dòng)遷移與局部任務(wù)降級(jí)等主被動(dòng)容錯(cuò)技術(shù),建立多層次主被動(dòng)統(tǒng)一、軟硬件協(xié)同的容錯(cuò)系統(tǒng).系統(tǒng)容錯(cuò)數(shù)據(jù)庫(kù)統(tǒng)計(jì)數(shù)據(jù)與課題測(cè)試結(jié)果表明:系統(tǒng)故障預(yù)測(cè)平均準(zhǔn)確率約70%,主動(dòng)遷移容錯(cuò)時(shí)間開(kāi)銷(xiāo)可控,系統(tǒng)應(yīng)用可感知的平均無(wú)故障時(shí)間可提升約1倍,局部降級(jí)容錯(cuò)對(duì)作業(yè)規(guī)模不敏感,可以有效控制故障的影響范圍,平均單個(gè)節(jié)點(diǎn)故障導(dǎo)致的應(yīng)用課題容錯(cuò)損失可降低90%以上.通過(guò)有效協(xié)同多種容錯(cuò)技術(shù),顯著提升神威太湖之光超級(jí)計(jì)算機(jī)系統(tǒng)的穩(wěn)定性與可用性.最后,以神威太湖之光超級(jí)計(jì)算機(jī)可靠性與可用性研究分析為基礎(chǔ),從硬件和軟件2個(gè)層次,歸納提出了E級(jí)計(jì)算機(jī)系統(tǒng)高可靠與高可用技術(shù)發(fā)展建議.后續(xù)我們將繼續(xù)針對(duì)系統(tǒng)級(jí)高效容錯(cuò)機(jī)制開(kāi)展研究分析.