硬體規格變更與記憶體瓶頸突破

該使用者保留了原有的 GPU 組合(RTX 3090 FE、RTX 5070 Ti、兩張 RTX 5060 Ti 16GB),但將 CPU 從 Core Ultra 7 265KF 換為 EPYC 7443(24 核心,Zen 3 架構)。

記憶體配置從 64GB DDR5-6000 雙通道升級為 256GB DDR4 ECC RDIMM 八通道。雖然記憶體顆粒規格為 2666 MT/s,但透過超頻至 3200 MT/s 運作,Triad 測試的記憶體頻寬從 88.6 GB/s 提升至 102 GB/s。

此次升級的關鍵在於解決大型 MoE 模型的記憶體容量限制。過去因 RAM 不足,模型權重需頻繁從 NVMe 固態硬碟讀取,導致每個 token 的生成都有 30-60% 的時間花在等待磁碟 I/O;現在所有權重均可駐留在 VRAM 與系統 RAM 中,這是解碼速度大幅提升的主因。

BIOS、BMC 與驅動層面的必要修正

升級後遇到 BMC(基板管理控制器)預設風扇閾值過高,導致安靜運轉的風扇被誤判為故障並全速運轉。使用者透過 ipmitool 指令將下限閾值調整為 100-300 RPM 範圍,並重置 BMC 解決問題。

在 BIOS 設定方面,啟用 APBDIS=1 並鎖定 SOC P-state 為 P0,以維持 Infinity Fabric 全速運作,這會使閒置功耗增加約 20W。此外,開啟 Resizable BAR(原本 BAR1 僅 256 MiB)與 PCIe Ten Bit Tag,兩者結合使張量並行預填充速度再提升約 4%。

核心層面需啟用 iommu=pt 參數,這不僅讓 llama.cpp 的張量並行預填充速度提升 3.5%,也恢復了 NVMe 隨機讀取效能(KIOXIA QD32 IOPS 從 837K 回升至 941K)。

llama.cpp 參數調整與無效嘗試

針對多卡張量並行(tensor-parallel)執行,使用者將 llama.cpp 的 micro-batch size (-ub) 從 512 調整為 1024。由於缺乏 GPU 間直接通訊(P2P),資料需透過系統 RAM 中轉,較大的批次大小減少了中轉次數,使 Qwen3.8-27B 的效能提升 5%。

並非所有優化都有效。啟用 NCCL_SHM_USE_CUDA_MEMCPY=1 導致 llama.cpp 張量並行模式掛起;為 GLM 模型的 CPU 專家層增加更多執行緒,在超過 16 個執行緒後效能持平,因此使用者決定不升級至 8-CCD 的 EPYC 處理器。

禁用 ACS(Access Control Services)在沒有 PCIe 交換器或 P2P 支援的情況下無意義;使用 Performance CPU 調度器也未帶來任何變化。

前後效能對比數據

記憶體頻寬測試顯示,多線程 Triad 從 58.8 GB/s 提升至 102.0 GB/s(+73%),單線程則從 32.3 GB/s 提升至 37.4 GB/s(+16%)。PCIe 主機與 GPU 之間的頻寬也翻倍,RTX 3090/5070 Ti 從約 13 GB/s 提升至 26-28 GB/s。

在大型 MoE 模型方面,GLM-5.3-Flash 的解碼速度從 9.7 tok/s 提升至 41.0 tok/s(4.2 倍);DeepSeek-V4.1-Flash 從 9.3 tok/s 提升至 35.2 tok/s(3.8 倍)。預填充速度也有顯著提升,例如 GLM 的 29K prompt 預填充從 577 tok/s 增至 1,069 tok/s。

對於受限於 GPU 顯存或卡間通訊瓶頸的密集模型,效能變化不大。Qwen3.8-27B 在張量並行模式下的預填充速度甚至微幅下降 2%(調校前曾下降 13%,後透過優化回到持平),解碼速度則幾乎不變。SSD 隨機讀取效能因 IOMMU 修正而大幅提升,WD SN7100 從 102K IOPS 增至 381K IOPS。

功耗、穩定性與未來規劃

經過 BIOS 調整後,系統閒置功耗約為 180W,較初始測得的 156W 略高。使用者透過 memtester 與長時間 DeepSeek 運行測試確認記憶體穩定性,ECC 錯誤校正計數維持在 0。

使用者指出,目前 EPYC 7443 僅有 4 個 CCD,記憶體頻寬約為理論值的一半。若升級至 8-CCD 的 EPYC 7543,預期可達到 140-170 GB/s 的頻寬,但價格約為兩倍。

由於目前配置已能流暢執行 GLM 與 DeepSeek 等模型,使用者認為投資回報良好,並計畫在未來升級更大量化版本的模型,同時保留現有 GPU 以等待更便宜的 PCIe 轉接卡來啟用第四張顯卡。