mx-smi 用户手册
概述
mx-smi
(MOFFETT System Management Interface)是基于 MOFFETT Management Library(MFML)的系统管理命令行工具,用于收集设备(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