李于鋒,莫則堯,肖永浩,趙士操,段博文
(1. 中國工程物理研究院 計算機應用研究所, 四川 綿陽 621900; 2. 北京應用物理與計算數學研究所, 北京 100094)
在科學發現和工程仿真中,使用一系列相關軟件完成數據收集、建模、模擬、分析成為普遍現象。各步驟間可能有數據依賴或控制依賴關系,這些軟件相互協作才能獲得最終結果??茖W工作流管理系統對這些軟件及其數據依賴關系進行組合,并控制各部分在時間、空間以及資源等約束條件下按序完成,已經成為復雜科學計算流程管理的必要手段,有效推動了科研進展[1]。面向大規模數據集和復雜計算流程的超算環境科學工作流技術提供了自動化、流程化的方法,并為用戶屏蔽作業投遞和數據傳遞轉換等細節,極大地促進了超算環境和應用平臺的協同發展。
在超算環境中,資源失效是常見現象,如計算結點死機或網絡模塊出現故障等問題造成無法正常工作等。據估計E級計算的平均無故障時間(Mean Time Between Failure, MTBF)已縮短為數分鐘[2]。資源失效會造成任務和流程中斷執行。另外,在復雜流程(通常表現為稠密大規模有向圖)中組件數量大、配置煩瑣,對系統環境變量及運行參數有嚴格要求,用戶使用易出現配置錯誤導致軟件組件運行異常,也同樣造成任務運行失敗和流程中斷執行。如何對任務運行失敗進行預防或者失敗后進行自動恢復,以保證流程整體自動持續運行,是工作流容錯研究的重點問題。
容錯作為科學工作流管理系統的重要組成部分,隨著科學工作流運行環境從單機、集群、異構多集群到云的變遷,涌現出多種容錯策略,在不同的運行模式下,為工作流平臺的穩定運行提供了有力保障?!?br>