第一次启动不满载、第二次才满速满功耗,这是典型的显卡 boost 没被及时拉起来,大概率跟 Vulkan 冷启动有关。ROCm 那路能拉满但只有 30t/s,是另一码事(ROCm 路径本身在 LLM 上就慢,跟这个不满载不是同一个问题)。
先量数据再下结论:
在第一次启动时盯着 GPU 测频测功耗:radeontop -1(需要权限)或 rocm-smi --showclocks --showpower --showtemp。如果第 1 次跑的时候频率一直停在 idle 低档(几百 MHz、功率几十瓦),第 2 次才顶到 boost 档、功率上到 200W+,那就坐实了是 DPM(Dynamic Power Management)没把卡推上 performance 档。
成因:第一次 launch 会做 shader 编译/缓存,GPU 一直"闲-忙-闲"交替、利用率低,功耗管理器看负荷不够大就压低频;第二次所有 kernel 已缓存,一上来就是高负载,boost 立刻响应。
三个办法按顺序试:
先把 DPM 顶到性能档再启动——
echo performance | sudo tee /sys/class/drm/card*/device/power_dpm_force_performance_level
或 echo high | sudo tee .../device/power_dpm_state(两个都试,机型不同生效字段不同)
加个"暖机":先很短跑一段(--n-predict 8)把 kernel 缓存热起来,再正常起服务。
确认 power_dpm_state 当前是不是 auto/battery,改成 performance 再跑一遍看是否首次就满速。
另外你说的"电源 reset"——如果强制拉满后瞬间重启,才算真电源问题,回到 johnnybegood 说的用 MSI Burner 看功耗曲线核实瞬时峰值。先把上面三步跑完,判断是驱动档位没推上去,还是供电实质超载,别急着换电源。