首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >HBM报错检测

HBM报错检测

作者头像
用户12553134
发布2026-06-30 12:31:47
发布2026-06-30 12:31:47
70
举报

#!/bin/bash

# 用途:扫描所有节点,输出 ECC 错误计数非零的主机名、SN 及错误详情

# 改进:合并命令、设置超时、显示进度

INVENTORY="all.ini"

ANSIBLE_TIMEOUT=30 # 每个 ansible 命令超时时间(秒)

ANSIBLE_PARALLEL=10 # 并发数(若启用并行)

echo "正在扫描所有节点的 NPU ECC 状态(只显示非零错误)..."

echo "注意:每个节点超时设为 ${ANSIBLE_TIMEOUT}s"

# 获取主机列表(去除表头)

hosts=(ansible -i "

for host in $hosts; do

echo -n "检查 $host ... "

# 使用单个 ansible 命令同时获取 SN 和 ECC 信息

output=(timeout ANSIBLE_TIMEOUT ansible -i "INVENTORY" "

echo 'SN:' \$(dmidecode -s system-serial-number 2>/dev/null || echo 'N/A')

for i in \$(seq 0 7); do

npu-smi info -t ecc -i \$i -c 0

done

" 2>/dev/null)

# 检查是否超时或失败

if [ ? -ne 0 ] || [ -z "

echo "超时或无响应,跳过"

continue

fi

# 提取 SN 行

sn_line=(echo "

sn=(echo "

# 提取所有非零 ECC 行(忽略 SN 行和空行)

ecc_lines=(echo "

if [ -n "$ecc_lines" ]; then

echo "发现错误!"

echo "================================"

echo "Host: $host"

echo "SN: $sn"

echo "非零 ECC 计数:"

echo "$ecc_lines"

echo "================================"

else

echo "正常(无错误)"

fi

done

echo "扫描完成。"

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2026-06-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 算力网络探索 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档