(2026/9/8 更新)SGLang 投產實測:W7800 48GB 上嘅 gfx1100 fork + MTP-3 + DFlash 無人區
-

一杯奶茶就換來巨大生產力
祝各位壇友事事順利
Terry兄財源滾滾
️ -
,
T terry 固定了此主题
-
補充一個Rocm燒CPU的小修復,我回家才發現的:
【分享】ROCm 7.2.4 + SGLang:idle 冇 request 燒 ~3 core CPU / 83°C → self-build libhsa + 1ms throttle 修好(3→1 core、83→64°C)
環境:AMD Radeon PRO W7800(gfx1100)· ROCm 7.2.4 · Ubuntu 24.04 · SGLang(Qwen3.5/3.8 hybrid 27B GPTQ W4A16)
症狀
- idle(GPU 0%、冇 request)長期燒 ~2.9 core / CPU 83°C / 風扇全速
- --sleep-on-idle 已開(官方 PR #6026)→ python 主 loop 已 park,照燒
斷症
- perf:燒喺 libhsa-runtime64.so(ROCm rocr runtime)
- rocr 源碼:Runtime::Load() 起兩個 AsyncEventsInfo thread 行 AsyncEventsLoop,
signals 嗰個 hardcode 唔用 interrupt wait → 純 CPU-poll = ROCm runtime 層面問題 - 關聯:#1730(python 側,--sleep-on-idle 已修)、ROCm PR #7952(throttle,7.2.4 未有)、#5534
修法(self-build rocr,唔使升 ROCm)
- git clone --depth 1 --branch rocm-7.2.4 https://github.com/ROCm/ROCr-runtime rocr-src
- Patch runtime/hsa-runtime/core/runtime/runtime.cpp 嘅 AsyncEventsLoop:
純 CPU-poll 分支掃完一輪冇嘢處理又冇 interrupt wait → 瞓 1ms:
if (!interrupt_wait && !finish) { os::Sleep(1); }
(插喺 "if (interrupt_wait) { WaitForInterrupt(); init_age = false; }" 之後) - Build 陷阱(最嘥時間位):
a. trap_handler 要 clang:apt clang-18 讀唔到 ROCm LLVM22 bitcode + 冇 ld.lld
b. 正解 = ROCm bundled AMD clang 22(/opt/rocm/llvm/bin/clang,version 啱 bitcode)
c. ROCm 個 llvm 冇 ClangConfig/LLVMConfig cmake → 自製 shim:
ClangConfig.cmake:
add_executable(clang IMPORTED)
set_target_properties(clang PROPERTIES IMPORTED_LOCATION "/opt/rocm/llvm/bin/clang")
add_executable(Clang::clang ALIAS clang)
LLVMConfig.cmake:
add_executable(llvm-objcopy IMPORTED)
set_target_properties(llvm-objcopy PROPERTIES IMPORTED_LOCATION "/opt/rocm/llvm/bin/llvm-objcopy")
add_executable(LLVM::llvm-objcopy ALIAS llvm-objcopy)
d. export PATH=/opt/rocm/llvm/bin:$PATH
cmake -B build -DCMAKE_BUILD_TYPE=Release -DCMAKE_PREFIX_PATH=/opt/rocm
-DClang_DIR=<shim>/clang -DLLVM_DIR=<shim>/llvm .
cmake --build build -j8 → build/rocr/lib/libhsa-runtime64.so.1.18.0 - Swap + rollback:
sudo cp /opt/rocm/lib/libhsa-runtime64.so.1.18.70204 ~/libhsa.orig
sudo cp build/rocr/lib/libhsa-runtime64.so.1.18.0 /opt/rocm/lib/libhsa-runtime64.so.1.18.70204
sudo systemctl restart <engine service>
Rollback:
sudo cp ~/libhsa.orig /opt/rocm/lib/libhsa-runtime64.so.1.18.70204 && sudo systemctl restart <service>
結果
- idle CPU:~3 core → ~1 core(scheduler 1002→502 ticks/5s;main 500→~0)
- CPU temp:83°C → 64°C
- decode 冇影響:512 token @39.9 t/s、short 0.2s、health 200
剩餘觀察
- 最後 ~1 core = rocr::core::InterruptSignal::WaitRelaxed(engine 側主動 ACTIVE busy-wait,
perf caller 喺 /dev/dri/renderD128 mmap;disable-overlap/HiCache/poller 無關)→ 似 engine/HIP 主動等,未解 - 另外加咗 idle 15 分鐘自動停 engine 做保險;冇佢都已經好咗 66%
有同樣症狀(ROCm + SGLang/vLLM idle 燒 CPU)可試;唔得 rollback 一條 cp 搞掂。
-
@terry 哈,Terry兄

我的目標真是Deepseek V4 Flash

對我個人而言,多買三張就不是投資,是墜入顯卡KK園詐騙陷阱了🪤
-
@Wing-Wah-Law 这玩意如果真能弄起来,它是比两个DGX Spark更有生产力的,毕竟它可以四开ComfyUI,但是成本高,也折腾。总体上不算事特别难,你应该能搞得定。就是有钱有闲。
-
4卡能跑DEEPSEEK V4 FLASH真的不錯



不過家裡空間有限
如果QWEN 3.8 27B都不能滿足我的需求,我再考慮呢4卡或其他方案
謝謝你的意見! -
,系统 取消固定了此主题

