环境信息
| 项目 |
值 |
| 系统 |
fnOS 1.1.8-1419 (基于 Debian 12 bookworm) |
| 内核版本 |
6.12.18-trim |
| CPU |
AMD Ryzen 7 8845HS w/ Radeon 780M Graphics |
| GPU |
AMD/ATI Phoenix3 (Radeon 780M 集成显卡) |
| 内存 |
32 GB DDR5 5600MT/s (2 x 16GB Crucial CT16G56C46S5) |
| 硬盘 |
Lexar SSD ARES 4TB NVMe + Crucial P3 Plus 1TB NVMe |
| Docker |
ollama/ollama:rocm |
问题描述
在飞牛NAS Web 管理界面中,GPU 使用率监控始终显示为 0%,GPU 内存也不变化。但实际上 GPU 正在被 Docker 容器(Ollama AI 推理)正常使用。
实际 GPU 状态(通过 SSH 验证)
# GPU 使用率 - 实际为 96%
$ cat /sys/class/drm/card0/device/gpu_busy_percent
96
# GPU 温度 - 39°C
$ cat /sys/class/drm/card0/device/hwmon/hwmon*/temp1_input
39000
# GTT 显存使用 - 1.5GB / 13.6GB
$ cat /sys/class/drm/card0/device/mem_info_gtt_used
1626722304
$ cat /sys/class/drm/card0/device/mem_info_gtt_total
14608576512
原因分析
飞牛NAS 的 GPU 监控可能仅支持 NVIDIA GPU(通过 nvidia-smi),未适配 AMD GPU 的 sysfs 接口:
| 监控项 |
AMD GPU 路径 |
| 使用率 |
/sys/class/drm/card0/device/gpu_busy_percent |
| 温度 |
/sys/class/drm/card0/device/hwmon/hwmon*/temp1_input |
| GTT显存使用 |
/sys/class/drm/card0/device/mem_info_gtt_used |
| GTT显存总量 |
/sys/class/drm/card0/device/mem_info_gtt_total |
| VRAM使用 |
/sys/class/drm/card0/device/mem_info_vram_used |
注意:AMD APU 使用 GTT(从系统内存借用)而非传统 VRAM。
期望行为
飞牛NAS 监控页面能正确显示 AMD GPU 的:
- GPU 使用率
- GPU 温度
- 显存使用(GTT 或 VRAM)
硬件识别信息
66:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Phoenix3 (rev c5)
临时解决方案
可通过命令行手动监控:
watch -n 1 'echo "=== AMD APU Monitor ==="; echo "GPU: $(cat /sys/class/drm/card0/device/gpu_busy_percent)%"; echo "温度: $(($(cat /sys/class/drm/card0/device/hwmon/hwmon*/temp1_input)/1000))°C"; echo "GTT显存: $(($(cat /sys/class/drm/card0/device/mem_info_gtt_used)/1048576))MB / $(($(cat /sys/class/drm/card0/device/mem_info_gtt_total)/1048576))MB"'