EAS提供算力检测与容错功能,可以自动检测GPU算力、节点通信等资源的健康状态,提升问题诊断效率,保障大规模部署下服务的可用性与稳定性。
适用范围
核心概念
-
检测时机:
-
实例运行前: 在服务实例(Pod)内的程序正式启动前进行检测。适用于预防因资源故障导致的启动失败,提前发现硬件或网络问题。
-
实例运行中: 在服务运行阶段进行后台常驻检测。
-
-
检测项:
-
实例运行前:支持计算性能检测、节点通信检测和计算通信交叉检测。
-
实例运行中:仅支持C4D(检测显卡的健康状态)。
-
详细检测项说明,请参见附录:检测项说明。
-
-
异常状态处理:
-
实例启动失败: 当检测发现异常时,终止本次实例的启动。
-
不处理: 检测到异常后仅记录事件,不执行任何操作。
-
操作步骤
开启并配置算力检测
-
登录PAI控制台,在页面上方选择目标地域,并在右侧选择目标工作空间,然后单击进入EAS。
单击部署服务,然后在自定义模型部署区域,单击自定义部署。
-
在服务功能区域的稳定保障分类下,开启算力检测与容错,在右侧弹出的面板中,配置检测参数。如果直接配置JSON文件,请参见附录:JSON文件参数说明。
说明可以同时添加“实例运行前”和“实例运行中”两种检测。
-
配置实例运行前检测(可选):
-
选择检测时机: 选择实例运行前。
-
配置检测项: 根据需要勾选计算性能检测、节点通信检测等项目。平台默认开启了GPU GEMM和All-Reduce-单节点、All-Reduce-两节点间的检测。
-
设置最长检测时间:根据已选择的检测项,参考检测项说明中的预估检测时间(检测串行执行),设定一个检测超时时间(默认为5分钟),若检测在此时间内未完成,将被视为异常。
-
选择异常状态处理: 默认为实例启动失败,也可以根据容灾策略选择实例重建。
-
-
配置实例运行中检测(可选):
-
选择检测时机: 选择实例运行中。
-
配置检测项: 目前仅支持C4D。
-
选择异常状态处理:目前仅支持不处理。
-
-
查看算力健康检测结果
配置该功能后,可以通过以下两种方式查看检测报告:
-
方法一:通过实例列表
-
在服务详情页,进入概览标签页。
-
找到服务实例区域的目标实例单元,在操作列中单击检测结果。

-
-
方法二:通过部署事件
-
在服务详情页,进入部署事件标签页。
-
找到类型为
SanityCheckSucceeded或SanityCheckFailed的事件,在其操作列单击检测结果。
-
单击后,页面右侧将弹出算力健康检测结果抽屉,可以在此查看不同检测项的详细报告。
常见问题
Q: All-Reduce检测失败通常是什么原因?
All-Reduce检测失败通常指向节点间的网络通信问题,例如网络延迟高、丢包严重,或者节点间RDMA配置错误等。可以根据报告中的详细数据,重点排查通信慢的节点。
附录:检测项说明
|
检测项 |
含义说明(推荐场景) |
预估检测时长 |
|
|
实例运行前 |
|||
|
计算性能检测 |
GPU GEMM |
用于检测GPU GEMM性能情况,可识别:
|
1 分钟 |
|
GPU Kernel Launch |
用于检测 GPU Kernel 启动延迟情况,可识别:
|
1 分钟 |
|
|
节点通信检测 |
All-Reduce |
用于检测节点通信性能,识别通信慢节点/故障节点。在不同的通信模式下,可识别:
|
单个集合通信检测 5 分钟 |
|
All-to-All |
|||
|
All-Gather |
|||
|
Multi-All-Reduce |
|||
|
PyTorch-Gloo |
使用PyTorch Gloo检测节点通信, 识别通信故障节点。 |
1分钟 |
|
|
Network Connectivity |
用于检测机头或机尾网络连通性,识别通信连通异常节点。 |
2 分钟 |
|
|
计算通信交叉检测 |
MatMul/All-Reduce Overlap |
用于检测通信kernel和计算kernel重叠时单节点的性能情况,可识别:
|
1 分钟 |
|
实例运行中 |
|||
|
C4D |
在实例运行过程中检测显卡的健康状态。 |
||
附录:JSON文件参数说明
配置示例
{
"aimaster": {
"runtime_check": {
"fail_action": "retain",
"micro_benchmarks": "c4d"
},
"sanity_check": {
"fail_action": "retain",
"micro_benchmarks": "gemm_flops,all_reduce_1,all_reduce_2,kernel_launch,all_reduce,all_to_all_2,all_gather_2,all_gather,multi_all_reduce_2,multi_all_reduce,pytorch_gloo_2,network_connectivity,comp_comm_overlap",
"timeout": 100
}
}
}
参数说明
|
参数 |
描述 |
||
|
aimaster |
runtime_check 实例运行中 |
fail_action |
异常状态处理 |
|
micro_benchmarks |
检测项。可选值:c4d。 |
||
|
sanity_check 实例运行前 |
fail_action |
异常状态处理 |
|
|
micro_benchmarks |
检测项。多个检测项英文逗号分隔。 |
||
|
timeout |
最大检测时长,单位:分钟。 |
||