本文介紹如何查看GPU執行個體的監控指標,以及如何根據不同資源指標,配置GPU執行個體預留模式下的彈性擴縮容策略。
背景資訊
在模型訓練、AI推理、音視頻轉碼等不同情境下,GPU硬體資源使用率存在差異。Function Compute依據GPU執行個體的資源使用率,包括SM、顯存、硬體解碼器以及硬體編碼器利用率,提供GPU預留執行個體Auto Scaling的功能。
Function Compute支援通過定時修改和根據指標修改Auto Scaling限制規則兩種方式,為預留模式配置Auto Scaling策略。GPU執行個體僅支援根據指標修改Auto Scaling限制規則的方式,更多資訊,請參見根據指標修改限制。
查看GPU監控指標
調用GPU函數執行完成後,您可以在Function Compute控制台,查看GPU執行個體的各項資源使用方式。
- 登入Function Compute控制台,在左側導覽列,選擇 。
- 在頂部功能表列,選擇地區,然後在服務名稱列表,單擊目標服務名稱。
- 在服務監控大盤頁面的函數名稱列表,單擊目標函數名稱。
- 在函數監控大盤頁面,選擇執行個體指標頁簽。通過觀察GPU顯存使用率(百分比)、GPU SM利用率(百分比)、GPU硬體編碼器利用率(百分比)和GPU硬體解碼器利用率(百分比)指標,協助您瞭解GPU的各項資源使用率。
配置Auto Scaling策略
GPU資源使用率彈性指標
指標名稱 | 描述 | 取值範圍 |
GPUSmUtilization | GPU SM利用率 | [0, 1],即利用率為0%~100%。 |
GPUMemoryUtilization | GPU顯存利用率 | [0, 1],即利用率為0%~100%。 |
GPUDecoderUtilization | GPU硬體解碼器利用率 | [0, 1],即利用率為0%~100%。 |
GPUEncoderUtilization | GPU硬體編碼器利用率 | [0, 1],即利用率為0%~100%。 |
通過控制台配置Auto Scaling策略
- 登入Function Compute控制台,在左側導覽列,單擊服務及函數。
- 在頂部功能表列,選擇地區,然後在服務列表頁面,單擊目標服務。
- 在函數管理頁面,單擊目標函數名稱,然後在函數詳情頁面,單擊彈性管理頁簽。
- 在函數詳情頁面的彈性管理頁簽,單擊建立規則。
- 在建立Auto Scaling限制規則頁面,按需設定以下配置項,然後單擊建立。
- 設定版本和最小執行個體數,其他配置項保持預設值即可。
- 在根據指標修改限制地區,單擊+添加配置,然後設定相關策略配置。樣本如下。
設定完成後,您可以在目標函數的,查看函數預留執行個體數的變化。 - 設定版本和最小執行個體數,其他配置項保持預設值即可。
通過Serverless Devs配置Auto Scaling策略
- 建立專案目錄。
mkdir fc-gpu-async-job&&cd fc-gpu-async-job
- 在專案目錄下,建立包含Auto Scaling策略的檔案,例如gpu-sm-hpa-policy.json。樣本如下。
{ "target": 1, "targetTrackingPolicies": [ {"name":"hpa_gpu_decoder_util","startTime":"2022-09-05T16:00:00.000Z","endTime":"2023-07-06T16:00:00.000Z","metricType":"GPUSmUtilization","metricTarget":0.01,"minCapacity":1,"maxCapacity":20} ] }
- 在專案目錄下,執行以下命令將Auto Scaling策略添加至目標函數。
s cli fc provision put --region ${region} --service-name ${service-name} --function-name ${function-name} --qualifier LATEST --config gpu-sm-hpa-policy.json
- 執行以下命令查看Auto Scaling策略。
s cli fc provision get --region ${region} --service-name ${service-name} --function-name ${function-name} --qualifier LATEST
預期結果如下。[2022-10-08 16:00:12] [INFO] [FC] - Getting provision: zh****.LATEST/zh**** serviceName: zh**** functionName: zh**** qualifier: LATEST resource: 164901546557****#zh****#LATEST#zh**** target: 1 current: 1 scheduledActions: null targetTrackingPolicies: - name: hpa_gpu_decoder_util startTime: 2022-09-05T16:00:00.000Z endTime: 2023-07-06T16:00:00.000Z metricType: GPUSmUtilization metricTarget: 0.01 minCapacity: 1 maxCapacity: 20 currentError: alwaysAllocateCPU: true
更多資訊
如您對彈性擴縮容的敏感度調整有其他需求,請加入DingTalk使用者群(DingTalk群號64970014484)申請。