mx-smi 用户手册
概述
mx-smi(MOFFETT System Management Interface)是基于 MOFFETT Management Library(MXML)的系统管理命令行工具,用于收集设备(Device)信息、查看设备健康状态、重启设备及加载固件等。
基本使用
用法概览
mx-smi [选项] [子命令]
常规选项
-h,--help:显示帮助信息。--version:显示工具的版本信息。-l,--loop:按指定的时间间隔持续输出命令结果。取值范围:1-3600 秒。
默认间隔:5 秒。
使用
Ctrl+C终止输出。
示例
以下示例显示所有板卡的摘要信息:
mx-smi
Mon May 12 14:16:28 2025
╭─────────────────────────────────────────────────────────────────────────────────────╮
│MOFFETT-SMI 2.8.0 Driver Version 3.11.0 SOLA Version 3.11.0 │
╰─────────────────────────────────────────────────────────────────────────────────────╯
Card
┌─────────────────────────────────────────────────────────────────────────────────────┐
│Index Name Freq. Voltage Temp. Pwr Util Bus ID Memory-Usage SN │
├─────────────────────────────────────────────────────────────────────────────────────┤
│Card0 S40-02-A02 700MHz 930mV 29C 59W 0% 0:38:00.0 0MiB/81920MiB 2515040220003│
├─────────────────────────────────────────────────────────────────────────────────────┤
│Card1 S40-02-A02 700MHz 930mV 31C 55W 0% 0:3c:00.0 0MiB/81920MiB 2515040220004│
└─────────────────────────────────────────────────────────────────────────────────────┘
Processes
┌─────────────────────────────────────────────────────────────────────────────────────┐
│Index PID Process Name Memory Usage│
├─────────────────────────────────────────────────────────────────────────────────────┤
│ [No running processes found] │
└─────────────────────────────────────────────────────────────────────────────────────┘
输出字段说明
Card(卡信息)
| 字段 | 说明 |
|---|---|
| Index | 板卡索引 |
| Name | 产品名称 |
| Freq. | 卡的频率 |
| Voltage | 卡的电压 |
| Temp. | 卡的温度 |
| Pwr | 板卡功率,对不支持获取板卡功率的板卡则显示卡上所有设备的总功率 |
| Util | 卡的使用率(负载) |
| Bus ID | PCI 总线 ID,格式为 bus:domain:device.function |
| Memory-Usage | 卡的内存使用情况,格式为 Usage/Total,即(已使用内存/内存总量) |
| SN | 卡的序列号,是卡的唯一标识。 |
说明
显示的板卡信息为该卡下 Bus ID 最低的设备信息。
Processes(进程信息)
| 字段 | 说明 |
|---|---|
| index | 运行该进程的卡编号以及对应的设备 ID,输出格式为:(卡编号:设备 ID) |
| PID | 进程 ID |
| Process Name | 进程名,最大展示长度为 32 个字符,超出长度后以 … 省略开头的字符 |
| Memory Usage | 进程占用的内存大小 |
子命令详解
子命令 list
功能
查看设备的基本信息。
用法
mx-smi list [选项]
选项
-h,--help:显示帮助信息。i, --index:指定设备索引。取值范围:0-31。
使用方式:
空格分隔多个值,例如:
-i 0 1 2。使用花括号列表,例如:
-i {0,1,2}。
-l,--loop:按指定的时间间隔持续输出命令结果。取值范围:1-3600 秒。
默认间隔:5 秒。
使用
Ctrl+C终止输出。
示例
以下示例显示所有设备的基本信息:
mx-smi list
Mon May 12 11:58:50 2025
╭─────────────────────────────────────────────────────────────────────────────────────╮
│MOFFETT-SMI 2.8.0 Driver Version 3.11.0 SOLA Version 3.11.0 │
╰─────────────────────────────────────────────────────────────────────────────────────╯
Devices
┌─────────────────────────────────────────────────────────────────────────────────────┐
│Index Name Freq. Voltage Temp. Pwr Util Bus ID Memory-Usage SN │
├─────────────────────────────────────────────────────────────────────────────────────┤
│ + S40-02-A02 60W 2515040220003│
│ 0 700MHz 930mV 28C 2W 0% 0:38:00.0 0MiB/20480MiB │
│ 1 700MHz 930mV 29C 4W 0% 0:39:00.0 0MiB/20480MiB │
│ 2 700MHz 930mV 30C 3W 0% 0:3a:00.0 0MiB/20480MiB │
│ 3 700MHz 930mV 28C 2W 0% 0:3b:00.0 0MiB/20480MiB │
├─────────────────────────────────────────────────────────────────────────────────────┤
│ + S40-02-A02 55W 2515040220004│
│ 4 700MHz 930mV 30C 2W 0% 0:3c:00.0 0MiB/20480MiB │
│ 5 700MHz 930mV 30C 1W 0% 0:3d:00.0 0MiB/20480MiB │
│ 6 700MHz 930mV 30C 3W 0% 0:3e:00.0 0MiB/20480MiB │
│ 7 700MHz 930mV 29C 4W 0% 0:3f:00.0 0MiB/20480MiB │
└─────────────────────────────────────────────────────────────────────────────────────┘
Processes
┌─────────────────────────────────────────────────────────────────────────────────────┐
│Index PID Process Name Memory Usage│
├─────────────────────────────────────────────────────────────────────────────────────┤
│ [No running processes found] │
└─────────────────────────────────────────────────────────────────────────────────────┘
输出字段说明
请参见 mx-smi 命令的输出字段说明。
子命令 query
功能
显示设备的详细信息。
用法
mx-smi query [选项]
选项
-h,--help:显示帮助信息。i, --index:指定设备索引。取值范围:0-31。
使用方式:
空格分隔多个值,例如:
-i 0 1 2。使用花括号列表,例如:
-i {0,1,2}。
-d,--display:仅显示选定类型的信息。可选值(不区分大小写):ECC、FREQUENCY、MEMORY、PIDS、POWER、TEMPERATURE、UTILIZATION、VOLTAGE,详细说明如下表所示。
使用方式:
空格分隔多个值,例如:
-d MEMORY POWER。使用花括号列表,例如:
-d {MEMORY,POWER}。
| 可选值 | 说明 |
|---|---|
| MEMORY | 设备内存信息 |
| UTILIZATION | 设备使用率信息 |
| TEMPERATURE | 设备的温度信息 |
| POWER | 设备的功耗信息 |
| FREQUENCY | 设备的频率信息 |
| VOLTAGE | 设备的电压信息 |
| PIDS | 执行中任务的系统进程 ID |
| ECC | ECC 信息 |
-l,--loop:按指定的时间间隔持续输出命令结果。取值范围:1-3600 秒
默认间隔:5 秒。
使用
Ctrl+C终止输出。
示例
以下示例显示指定设备的详细信息:
mx-smi query -i 0
Timestamp : Mon May 12 17:24:11 2025
Driver Version : 3.11.0
SOLA Version : 3.11.0
Attached Devices : 8
Device 0
Product Name : S40-02-A02
SPU Cores Number : 4
FW Version : 1.0.17
MCU Version : 3V02
Serial Number : 2515040220003
UUID : 01000000000000000000000002515040220003
Board Id : 0x000
PCI
Bus : 0x38
Device : 0x00
Domain : 0x0000
Bus Id : 0:38:00.0
Device Id : 0x70401f36
Sub System Id : 0x70011f36
Memory Usage
Total : 20480 MiB
Reserved : 4484 MiB
Used : 0 MiB
Free : 15996 MiB
Utilization
Core 0 : 0 %
Core 1 : 0 %
Core 2 : 0 %
Core 3 : 0 %
Max : 0 %
Min : 0 %
Avg : 0 %
ECC Errors
Volatile
Device Memory Corrected : 0
Device Memory Uncorrected : 0
Aggregate
Device Memory Corrected : 0
Device Memory Uncorrected : 0
Temperature : 29 C
Power
Power Draw : 2 W
Power Limit : 83 W
Frequency : 700 MHz
Voltage : 930 mV
Processes
输出字段说明
| 字段 | 说明 |
|---|---|
| Timestamp | 当前时间戳 |
| Driver Version | 驱动版本 |
| Sola Version | SOLA Toolkit 版本 |
| Attached Devices | 设备数量 |
| Device |
设备标识 |
| Product Name | 设备名称(产品名称) |
| SPU Cores Number | 设备核心数量 |
| FW Version | 固件版本 |
| MCU Version | MCU 版本 |
| Serial Number | 序列号(同一张卡拥有相同序列号) |
| UUID | UUID(每个设备全局唯一 ID) |
| Board Id | 板卡 ID |
| PCI | PCI 信息 |
| Bus | PCI bus(16 进制) |
| Device | PCI device(16 进制) |
| Domain | PCI domain(16 进制) |
| Bus Id | PCI bus id,格式为 domain:bus:device.function(16 进制) |
| Device Id | PCI vendor device id(16 进制) |
| Sub System Id | PCI 子系统 id(16 进制) |
| Memory Usage | 内容使用情况 |
| Total | SPU 总内存(单位:MiB) |
| Reserved | SPU 预留内存(单位:MiB) |
| Used | SPU 已使用内存(单位:MiB) |
| Free | SPU 总空闲内存(单位:MiB) |
| Utilization | 使用率(各核心上的平均使用率) |
| ECC Errors | ECC 错误信息 |
| Volatile | 易失性设备内存错误信息 |
| Device Memory Corrected | 已纠正的易失性设备内存错误数量 |
| Device Memory Uncorrected | 未纠正的易失性设备内存错误数量 |
| Aggregate | 聚合设备内存错误信息 |
| Device Memory Corrected | 已纠正的聚合设备内存错误数量 |
| Device Memory Uncorrected | 未纠正的聚合设备内存错误数量 |
| Temperature | 设备的温度(单位:℃) |
| Power | 设备功率信息 |
| Power Draw | 设备的当前功率 |
| Power Limit | 设备的最大功率(单位:W) |
| Frequency | 设备的频率(单位:MHz) |
| Voltage | 设备的电压(单位:mV |
子命令 select
功能
打印指定的设备属性信息。
用法
mx-smi select [选项]
通用选项
-h,--help:显示帮助信息。-noheader:不显示属性名表头。-l,--loop:按指定的时间间隔持续输出命令结果。取值范围:1-3600 秒
默认间隔:5 秒。
使用
Ctrl+C终止输出。
字段选项
以下选项必须指定一个使用:
-f,--field:指定显示 SPU 设备信息的字段。可选值(不区分大小写)如下表所示。
使用方式:
空格分隔多个值,例如:
-f index pci.bus_id。使用花括号列表,例如:
-f {index,pci.bus_id}。
可选值
说明
timestamp
输出当前时间戳。
driver_version
驱动的版本
sola_version
SOLA 版本
count
检测到的设备(Devices)数量
index
设备 ID(根据 Bus ID 生成)
name
设备名称(产品名称)
cores
设备核心数量
firmware_version
固件版本
mcu_version
MCU 版本
serial
序列号(同一张卡拥有相同序列号,不同卡的序列号不同)
uuid
UUID(每个设备全局唯一 ID)
board
板卡 ID
pci.bus
PCI bus(16 进制)
pci.device
PCI device(16 进制)
pci.domain
PCI domain(16 进制)
pci.bus_id
PCI bus id,格式为 domain:bus:device.function(16 进制)
pci.device_id
PCI vendor device id(16 进制)
pci.sub_device_id
PCI Sub System id(16 进制)
memory.total
SPU 总内存(单位:MiB)
memory.reserved
SPU 预留内存(单位:MiB)
memory.used
SPU 已使用内存(单位:MiB)
memory.free
SPU 总空闲内存(单位:MiB)
utilization
使用率(各核心上的平均使用率)
ecc.errors.corrected.volatile.device_memory
已纠正的易失性设备内存错误数量
ecc.errors.corrected.aggregate.device_memory
已纠正的聚合设备内存错误数量
ecc.errors.uncorrected.volatile.device_memory
未纠正的易失性设备内存错误数量
ecc.errors.uncorrected.aggregate.device_memory
未纠正的聚合设备内存错误数量
temperature
设备的温度(单位:℃)
power.draw
设备的当前功率
power.limit
设备的最大功率(单位:W)
frequency
设备的频率(单位:MHz)
voltage
设备的电压(单位:mV)
--board-field:指定显示板卡信息的字段。可选值:
board:板卡 ID。
board.power:板卡功率或卡上所有设备的功率总和。
使用方式:
空格分隔多个值,例如:
--board-field board board.power。使用花括号列表,例如:
--board-field {board,board.power}。
目标设备选项
以下选项配合字段选项使用:
-i,--index:指定设备索引(与--field一起使用)。取值范围:0-31。
使用方式:
空格分隔多个值,例如:
-i 0 1 2。使用花括号列表,例如:
-i {1,2,3}。
-b, --board:指定板卡 ID(与--board-field一起使用)。取值范围:0-7。
使用方式:
空格分隔多个值,例如:
-b 0 1。使用花括号列表,例如:
-b {0,1,2}。
示例
以下示例查看设备的指定信息。默认第一行展示输出的属性名,后续每一行为用户指定的设备的属性信息。
mx-smi select -f {index,pci.bus_id,board} -i 2 1 0
index, pci.bus_id, board
2, 0:3a:00.0, 0
1, 0:39:00.0, 0
0, 0:38:00.0, 0
以下示例查看板卡的指定信息:
mx-smi select --board-field board board.power -b 0 1 2
board, board.power
0, 7 W
1, 3 W
2, 4 W
子命令 reboot
功能
重启设备并加载固件,操作记录保存在 /var/log/moffett/sola/smi.log 文件中。
用法
sudo mx-smi reboot [选项]
选项
-h,--help:显示帮助信息。目标设备选项(必须指定一个):
-i,–index:指定要重启的设备索引。取值范围:0-31。
使用方式:
空格分隔多个值,例如:
-i 0 1 2。使用花括号列表,例如:
-i {1,2,3}。
--all:重启所有设备。
示例
以下示例重启所有设备:
sudo mx-smi reboot --all