16 KiB
XB 📊 硬件监控面板 — 使用说明书
节点名称:
XB_MemoryVisualization
显示名称:XB 📊 硬件监控面板 (Memory Visualization)
分类:XB_ToolBox/Dashboard
基于: ComfyUI-MemoryVisualization
适配: 小白工具箱 (XB_ToolBox) / NVIDIA + AMD 双卡支持
目录
1. 功能概览
硬件监控面板是一个实时、可拖拽、可缩放的系统资源监控窗口,在 ComfyUI 界面右下角自动显示。
核心功能
| 功能 | 说明 |
|---|---|
| VRAM 显存监控 | 实时显示 GPU 显存使用量、分段占比(模型/Torch/缓存/其他) |
| RAM 内存监控 | 系统内存、进程内存、固定内存、Python 占用 |
| GPU 状态 | 利用率、温度、功耗(NVIDIA 全支持 / AMD 需 LibreHardwareMonitor) |
| CPU 状态 | CPU 使用率、型号识别 |
| 磁盘监控 | 磁盘读写速率、各分区剩余空间 |
| 页面文件 | 虚拟内存使用情况 |
| 模型详情 | 已加载模型列表、每个模型的 VRAM/内存分段占用 |
| 历史图表 | VRAM 使用量趋势图(面积图/柱状图/K线图/点阵图) |
| 快捷操作 | 一键卸载模型、清除缓存、执行/中断工作流 |
界面截图说明
┌─────────────────────────────────────────┐
│ ≡ 硬件监控 [▶] [卸载▾] [⤤] [−] │ ← 标题栏(可拖拽)
├─────────────────────────────────────────┤
│ 内存 32.5GB|64.0GB │
│ ████████░░░░░░░░░░░░░░ 固定/已加载/... │ ← 内容区
│ 显存 9.0GB|15.9GB │
│ ██████████████░░░░░░░░ 模型/Torch/... │
│ 峰值: 12.3GB 缓存: 1.2GB GPU 45% 55°C │
│ 页面文件 2.1GB|16.0GB │
├─────────────────────────────────────────┤
│ 14:30 14:32 · 9.0GB 实时 │ ← 图表时间轴
│ ▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓ │ ← 历史图表
│ ─────── ⬌ 拖拽调整图表高度 ─────── │
├─────────────────────────────────────────┤
│ ▸ AutoencodingEngine 320 MB │ ← 模型列表
│ ▸ Lumina2 5.7 GB │
│ ▸ ZImageT2IModel 4.1 GB │
└─────────────────────────────────────────┘
2. 安装与依赖
自动安装
面板无需放置节点即可自动加载。ComfyUI 启动后,监控窗口自动出现在界面右下角。
必备依赖
第一步:安装 .NET 运行时(AMD GPU 必需)
下载并安装 Windows Desktop Runtime 10.0.10:
https://builds.dotnet.microsoft.com/dotnet/WindowsDesktop/10.0.10/windowsdesktop-runtime-10.0.10-win-x64.exe
第二步:安装 Python 依赖
pip install psutil pythonnet
| 依赖 | 用途 | 必需 |
|---|---|---|
psutil |
CPU/内存/磁盘/进程信息 | ✅ 是 |
pythonnet |
.NET 桥接,驱动 LibreHardwareMonitor | ✅ 是 |
.NET Windows Desktop Runtime 10.0.10 |
pythonnet 运行所需 | ✅ 是 |
LibreHardwareMonitorLib.dll |
GPU 传感器读取(已内置) | ✅ 是 |
nvidia-ml-py |
NVIDIA GPU 精准显存数据 | ⚠️ 可选 |
LibreHardwareMonitorLib.dll已内置在XB_ToolBox\目录中,无需额外下载。
NVIDIA 用户(可选)
pip install nvidia-ml-py
安装后可获得设备级显存数据(而非进程级),Windows WDDM 下尤其有用。
3. 快速上手
3.1 启动面板
- 启动 ComfyUI
- 面板自动出现在界面右下角
- 如果没有看到,检查 ComfyUI 控制台是否有报错
3.2 面板操作
| 操作 | 方法 |
|---|---|
| 移动面板 | 拖拽标题栏 |
| 调整大小 | 拖拽面板左/右/下边缘或右下角 |
| 折叠/展开 | 点击标题栏 − / + 按钮 |
| 弹出窗口 | 点击 ⤤ 按钮(画中画模式) |
| 运行工作流 | 点击 ▶ 按钮 |
| 取消运行 | 运行中点击 ■ 按钮 |
| 打开菜单 | 右键点击面板任意位置 |
3.3 工作流节点(可选)
你也可以将 XB 📊 硬件监控面板 节点拖入工作流:
- 节点本身不产生任何输出
- 执行节点时会在控制台打印当前 VRAM 状态
- 主要用作工作流中的"书签"标记
4. 面板布局详解
4.1 标题栏
≡ 硬件监控 [▶] [卸载▾] [⤤] [−]
| 元素 | 功能 |
|---|---|
≡ |
拖拽手柄(停靠模式下可见) |
硬件监控 |
面板标题 |
▶ / ■ |
执行/中断工作流按钮 |
卸载▾ |
卸载模型菜单 |
⤤ |
弹出画中画窗口 |
− / + |
折叠/展开面板 |
4.2 内容区
内存行
内存 32.5GB|64.0GB
████████░░░░░░░░░░░░░░░░░░░░
■ 固定 9.9GB ■ 已加载 0KB ■ Python 11.3GB ■ 其他 11.3GB
- 固定内存 (Pinned):用于 GPU 快速传输的锁页内存
- 已加载 (Loaded):已从磁盘加载到 RAM 的模型数据
- Python:Python 进程自身占用
- 其他:系统及其他进程占用
显存行
显存 (AMD Radeon RX 7900 XTX) 9.0GB|15.9GB
████████████████░░░░░░░░░░░░░░░░
■ 模型 5.7GB ■ Torch 2.1GB ■ 缓存 0.5GB ■ 其他 0.7GB
峰值: 12.3GB 缓存: 1.2GB GPU 45% 55°C 9W ● 运行中
- 模型 (Models):已加载模型占用的 VRAM
- Torch:PyTorch 活跃分配
- 缓存 (Cache):PyTorch 缓存池(可释放)
- 其他 (Other):驱动及其他进程占用
底部信息行:
| 项目 | 说明 |
|---|---|
峰值 |
自面板启动以来的 VRAM 最大使用量 |
缓存 |
PyTorch 缓存池大小 |
GPU XX% |
GPU 核心利用率(点击可切换图表上的 GPU 曲线) |
XX°C |
GPU 温度 |
XX W |
GPU 功耗 |
● 运行中 / ● 空闲 |
工作流执行状态 |
页面文件行
页面文件 2.1GB|16.0GB
████████░░░░░░░░░░░░░░░░░░░░░░
仅当系统启用了页面文件时显示。
5. 右键菜单
右键点击面板任意位置打开配置菜单:
┌─────────────────────┐
│ 缩放 ▸ │ 面板整体缩放 (50%~200%)
│ 字号 ▸ │ 字体大小 (10px~20px)
│ 轮询间隔 ▸ │ 数据刷新频率 (100ms~5s)
│ 显示 ▸ │ 显示选项
│ 迷你视图 ▸ │ 折叠状态下的迷你栏选项
│ 图表 ▸ │ 图表样式和颜色
│ 主题 ▸ │ 配色方案
│ 停靠宽度 ▸ │ 停靠到顶栏时的宽度
│ ✓ 停靠到顶栏 │ 切换浮动/停靠模式
│ 重置历史 │ 清除图表历史数据
└─────────────────────┘
5.1 缩放子菜单
| 选项 | 效果 |
|---|---|
| 50% ~ 200% | 面板整体缩放,包括所有文字和图表 |
5.2 字号子菜单
| 选项 | 适用场景 |
|---|---|
| 10px ~ 12px | 小屏幕 / 紧凑布局 |
| 13px ~ 14px | 正常阅读 |
| 16px ~ 20px | 大屏 / 远距离观看 |
字号与缩放独立:字号只改变文字大小,缩放改变整个面板尺寸。
5.3 轮询间隔子菜单
| 选项 | 说明 |
|---|---|
| 100ms ~ 250ms | 极快刷新,CPU 开销较大 |
| 500ms | 默认,平衡刷新率和性能 |
| 1s ~ 5s | 低频刷新,适合长时间监控 |
5.4 显示子菜单
| 选项 | 默认 | 说明 |
|---|---|---|
| 模型条着色 | ☐ | 按模型类型着色进度条 |
| 模型边框着色 | ☑ | 按模型类型着色边框 |
| 模型名着色 | ☑ | 按模型类型着色名称 |
| 显示图例 | ☑ | 显示分段图例文字 |
| 显示标题 | ☑ | 显示面板标题 |
| 执行按钮 | ☐ | 显示播放/停止按钮 |
5.5 迷你视图子菜单
控制面板折叠后迷你栏中显示哪些内容:
| 选项 | 说明 |
|---|---|
| RAM | 内存进度条 |
| VRAM | 显存进度条 |
| CPU | CPU 使用率 |
| 页面文件 | 虚拟内存 |
| GPU ▸ | GPU 子菜单(利用率/温度/功耗) |
| 磁盘 ▸ | 磁盘子菜单(I/O + 各分区空间) |
| 设备名称 | 显示 GPU/CPU 型号 |
| 类型标签 | 显示 RAM/VRAM/CPU 标签 |
| 数值显示 | 显示具体数值 |
| 单位显示 | 显示 GB/MB/°C/W 单位 |
| 分隔线 | 显示分组分隔线 |
5.6 图表子菜单
| 选项 | 说明 |
|---|---|
| 面积图 (堆叠) | 默认,aimdo+Torch+其他分层显示 |
| 柱状图 | 每3个采样点聚合为一个柱子 |
| K线图 | 类似股票K线,显示开盘/收盘/最高/最低 |
| 点阵 (渐变) | 由上到下渐变的点阵密度图 |
| 显存颜色 | 自定义 VRAM 区域颜色 |
| 总量颜色 | 自定义总量曲线颜色 |
| 平滑度 | 总量曲线的移动平均窗口大小 (0~20) |
5.7 主题子菜单
| 主题 | 风格 |
|---|---|
| default | 深色主题,橙/绿/蓝配色 |
| comfy | 跟随 ComfyUI 自身主题 |
| light | 亮色主题 |
| sepia | 复古暖色调 |
| fallout | 哔哔小子辐射风(绿色 CRT) |
| pink | 粉色少女风 |
| lucifer | 黑底红字暗黑风 |
6. 迷你栏 (Mini Bar)
面板折叠后显示的精简状态栏:
RAM ████████░░░░ 32.5|64.0GB │ VRAM ██████░░░░ 9.0|15.9GB │ CPU ████░░ 45%
迷你栏中的 GPU 区域支持多行模式(同时显示利用率/温度/功耗时自动启用更紧凑的排版)。
7. 模型列表
展开面板后,底部显示所有已加载模型的详细信息:
▸ AutoencodingEngine 320 MB [×]
████████████████████████████████████░░░░░░░░
■ VRAM 320MB ■ pinned 0KB ■ loaded 0KB ■ RAM 0KB
▾ Lumina2 5.7 GB [×]
██████████████████████████████████░░░░░░░░░░
■ VRAM 5.6GB ■ pinned 103MB ■ loaded 0KB ■ unloaded 4KB
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓░░░░░░░░░░░░░░ ← aimdo 页级驻留(需 aimdo)
■ VRAM 5.6GB ■ unloaded 4KB
| 元素 | 说明 |
|---|---|
▸ / ▾ |
点击模型名展开/折叠详情 |
[×] |
卸载该模型 |
| 彩色进度条 | VRAM(橙) / 固定内存(蓝) / 已加载(深蓝) / 未加载(灰) |
| 小方块网格 | aimdo 页面驻留可视化(需安装 comfy_aimdo) |
(static) |
标记为非动态加载的模型 |
8. 历史图表
图表区域显示 VRAM 使用量随时间变化的趋势:
14:30 14:32 · 9.0GB 实时
▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓▓
─────────────────────── ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ─ ← 虚线 = 总显存上限
────────────────⬌ 拖拽调整图表高度 ────────────────
| 操作 | 方法 |
|---|---|
| 查看历史 | 在图表上左右拖拽浏览历史数据 |
| 回到实时 | 拖到最右侧自动恢复实时模式 |
| 悬停详情 | 鼠标悬停在图表上查看具体时间/数值 |
| 调整高度 | 拖拽图表下方的分隔条 |
| 执行标记 | 绿色竖线 = 开始执行,红色竖线 = 执行结束 |
图表样式
| 样式 | 特点 |
|---|---|
| 面积图 | 堆叠显示 aimdo+Torch+其他,直观 |
| 柱状图 | 每3秒聚合,干净简洁 |
| K线图 | 精确显示波动范围 |
| 点阵图 | 由上到下密度渐变,艺术感强 |
9. AMD GPU 用户须知
支持的 GPU
| GPU 系列 | 架构 | 利用率 | 温度 | 功耗 | VRAM |
|---|---|---|---|---|---|
| RX 7000 系列 | RDNA 3 | ✅ | ✅ | ✅ | ✅ |
| RX 6000 系列 | RDNA 2 | ✅ | ✅ | ✅ | ✅ |
| RX 5000 系列 | RDNA 1 | ✅ | ✅ | ✅ | ✅ |
| Vega / Radeon VII | GCN | ✅ | ✅ | ✅ | ✅ |
监控原理
AMD GPU 监控通过 LibreHardwareMonitor 实现(一个跨厂商的开源硬件监控库)。原理是直接读取 GPU 的 SMU(System Management Unit)传感器数据,与 AMD Adrenalin 驱动面板使用相同的底层接口。
如果数据不显示
- 确认
XB_ToolBox\LibreHardwareMonitorLib.dll存在 - 确认已安装
pythonnet:pip install pythonnet - 尝试以管理员身份运行 ComfyUI
- 查看 ComfyUI 控制台是否有
aimdo-viz: LibreHardwareMonitor相关日志
功耗显示的差异
AMD 功耗显示为 GPU Package(整个显卡的总功耗),单位是瓦特 (W),没有功率上限对比。这与 NVIDIA 的显示格式略有不同(NVIDIA 有 功耗/上限 格式)。
10. 常见问题
Q: 面板没有自动出现?
A: 检查 ComfyUI 控制台是否有 JavaScript 报错。常见原因:
pythonnet未安装LibreHardwareMonitorLib.dll缺失- JS 文件加载失败(检查
js/xb_memory_viz.js是否存在)
Q: GPU 利用率/温度/功耗都显示"无数据"?
A:
- NVIDIA:安装
nvidia-ml-py并重启 - AMD:确认
pythonnet已安装且 .NET Windows Desktop Runtime 10.0.10 已安装,查看控制台日志
Q: 面板太大/太小?
A: 右键 → 缩放 调整面板大小,或右键 → 字号 仅调整文字大小。
Q: 如何让面板固定在顶栏?
A: 拖拽面板到顶部 ComfyUI 操作栏的"停靠左侧"或"停靠右侧"区域释放,或右键 → 停靠到顶栏。
Q: 图表不更新?
A: 检查轮询间隔设置(右键 → 轮询间隔)。确保未将面板拖拽到历史数据中(右侧显示"实时"即为实时模式)。
Q: 节点放到工作流中有用吗?
A: 面板不需要节点即可工作。节点的作用是:
- 作为工作流书签
- 执行时在控制台打印 VRAM 状态
附录:键盘与鼠标操作速查
| 操作 | 快捷键/方法 |
|---|---|
| 移动面板 | 拖拽标题栏 |
| 快速拖拽(任意位置) | Ctrl + 拖拽 |
| 调整宽度 | 拖拽左/右边缘 |
| 调整高度 | 拖拽底部边缘 |
| 同时调整宽高 | 拖拽右下角 |
| 折叠/展开 | 点击 − / + |
| 弹出画中画 | 点击 ⤤ |
| 打开菜单 | 右键面板 |
| 关闭菜单 | 点击菜单外部 |
| 浏览图表历史 | 在图表上左右拖拽 |
| 图表悬停详情 | 鼠标悬停图表 |
| 切换图表 GPU 曲线 | 点击 GPU XX% 文字 |
| 折叠模型详情 | 点击模型名称 |
| 卸载单个模型 | 点击模型行 [×] |