日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

SanityCheck:算力健康檢測

本文為您介紹如何使用DLC提供的算力健康檢測能力。

功能介紹

在執行DLC任務時,可能會遇到以下問題:

  • 在任務花費一定時間加載模型Checkpoint或其他初始化操作后,由于申請的資源存在故障,無法順利開始訓練,需要調查定位故障問題并重新提交任務。該過程中會導致GPU資源的浪費。

  • 在任務運行階段,如果發現模型訓練性能下降,可能是慢節點導致的,但缺少快捷有效的問題定位方法。此外,資源組內機器的GPU算力和通信性能測試也欠缺便捷且可靠的基準程序。

針對上述問題,DLC提供了算力健康檢測(SanityCheck)功能,旨在對分布式訓練任務的算力資源健康度與性能進行檢查。在創建DLC訓練任務時可以開啟該功能,健康檢測會對參與訓練的資源進行全面檢測,自動隔離故障節點,并觸發后臺自動化運維流程,有效減少任務訓練初期遇到問題的可能性,提升訓練成功率。此外,在檢測完成后,會給出有關GPU算力以及通信性能的檢測報告,可以幫助識別和定位可能導致任務訓練性能下降的問題元素,整體提升問題診斷的效率。

使用限制

  • 僅支持在華北6(烏蘭察布)地域,使用靈駿智算資源提交的DLC訓練任務,開啟健康檢測功能。

  • 當前功能僅支持PyTorch類型的訓練任務,且要求任務資源的GPU(卡數)大于0。

開啟健康檢測

通過控制臺

PAI控制臺創建DLC訓練任務時,您可以在容錯與診斷區域,打開健康檢測開關,并配置相關參數。具體操作,請參見創建訓練任務。開啟健康檢測功能,并成功創建任務后,系統將占用一定的時間用于檢測資源健康度和可用性,并給出檢測結果。

image

其中健康檢測的關鍵參數說明如下:

參數

描述

檢測時機

  • 在任務運行前(默認):即任務獲取到資源后,先基于該訓練任務的算力節點進行預先檢測,再執行用戶代碼。

  • 在容錯發生后:即當任務運行異常,AIMaster自動容錯將任務重啟后,進行算力健康檢測。

    說明

    選擇該配置項時,必須打開自動容錯功能。更多內容介紹,請參見AIMaster:彈性自動容錯引擎

檢測項

默認開啟GPU GEMM、All-Reduce檢測。支持用戶選擇計算性能檢測、節點通信檢測、計算通信交叉檢測、模型模擬驗證。更多檢測項說明及推薦場景,請參見附錄:檢測項說明

最長檢測時間(分鐘)

健康檢測最長運行時間,默認為30分鐘。在檢測超時后,會觸發預設的處理方法。

檢測超時處理

當健康檢測運行時間超過設定值時,您可以選擇將任務轉入以下狀態:

  • 結束任務(默認):任務結束,狀態將變為檢測未通過

  • 掛起任務:將任務掛起,任務狀態還是檢測中,等待進一步的人工干預或系統指導進行下一步操作。

其他檢測配置

默認為空。

通過OpenAPI

調用CreateJob接口時,在Settings參數中新增2個參數開啟健康檢測功能。如下表所示:

參數

描述

示例

EnableSanityCheck

任務是否打開算力健康檢測。取值如下:

  • true:打開算力健康檢測。

  • false:不打開算力健康檢測。

"EnableSanityCheck" : "true"

SanityCheckArgs

算力健康檢測的執行參數,取值如下:

  • --sanity-check-timing:檢測時機,可選值如下:

    • BeforeJobRunning(默認值):任務在每次運行前進行檢測(包括任務重啟后)。

    • AfterJobFaultTolerant:在任務容錯發生后進行檢測。

  • --sanity-check-max-time:最長檢測時間,單位為分鐘。

  • --sanity-check-timeout-ops:檢測超時處理,可選值如下:

    • MarkJobFail(默認值):以失敗狀態結束任務。

    • KeepJobHang:掛起任務。

  • --sanity-check-envs:設置檢測的環境變量,默認為空。格式為key=value,多個變量之間用半角逗號(,)分隔。例如key1=value1,key2=value2

  • --sanity-check-timeout-per-test:每個測試超時時間,單位為分鐘,默認為6min。

  • --micro-benchmarks: 指定要執行的micro benchmarks,多個檢測項逗號分隔

  • --model-benchmarks: 執行要執行的model benchmarks,多個檢測項逗號分隔

"SanityCheckArgs" : "--sanity-check-timing=AfterJobFaultTolerant --sanity-check-timeout-ops=MarkJobFail"

查看檢測結果

健康檢測狀態說明

DLC任務在健康檢測中的相關狀態項如下:

  • 檢測中:正在進行算力健康檢測環節,期間的任務狀態將顯示為檢測中。

  • 檢測未通過:在執行算力健康檢測過程中,如果檢測出問題,或檢測時間超出設定的最大運行時間,狀態將顯示為檢測未通過。

  • 檢測通過:算力健康檢測全部通過后,任務將直接進入運行中的狀態。

查看健康檢測結果

通過控制臺

DLC任務詳情頁面下方的事件頁簽,單擊健康檢測,可以查看對應的檢測結果。

image

通過OpenAPI

配置消息通知

您可以在PAI工作空間的事件通知配置中創建消息通知規則,其中事件類型選擇DLC任務>任務自動容錯,其他參數配置詳情,請參見消息通知。當算力健康檢測未通過時,會發送消息通知。

說明

工作空間創建消息通知使用說明: 工作空間事件中心

image

附錄:檢測項說明

說明

預估檢測時長以2臺機器為單位,數值僅供參考,請以實際情況為準。

檢測項

含義說明(推薦場景)

預估檢測時長

計算性能檢測

GPU GEMM

用于檢測GPU GEMM性能情況,可識別:

  • 故障GPU:計算報錯、計算 Hang 住;

  • 性能慢節點:計算 TFLOPS 比較低。

1 分鐘

GPU Kernel Launch

用于檢測 GPU Kernel 啟動延遲情況,可識別:

  • 故障節點:Kernel 啟動報錯、Kernel 啟動 Hang 住;

  • 性能慢節點:Kernel 啟動耗時較長。

1 分鐘

節點通信檢測

All-Reduce

用于檢測節點通信性能,識別通信慢節點/故障節點。在不同的通信模式下,可識別:

  • 通信故障節點:通信報錯、Hang住;

  • 通信慢節點:通信帶寬較低。

單個集合通信檢測

5 分鐘

All-to-All

All-Gather

Multi-All-Reduce

Network Connectivity

用于檢測機頭/機尾網絡連通性,識別通信連通異常節點。

2 分鐘

計算通信交叉檢測

MatMul/All-Reduce Overlap

用于檢測通信kernel和計算kernel重疊時單節點的性能情況,可識別:

  • 故障節點:重疊計算報錯、Hang住;

  • 性能慢節點:重疊計算耗時較長。

1 分鐘

模型模擬驗證

Mini GPT

使用模型模擬驗證AI系統可靠性,可識別:

  • 故障節點:訓練loss異常、訓練Hang住、訓練報錯;

  • 性能慢節點:單步訓練耗時較長。

1 分鐘

Megatron GPT

5 分鐘

ResNet

2 分鐘