在現代多核心 CPU 架構下,irqbalance 是一項不可或缺的系統服務。它的核心使命是智慧地將硬體中斷請求(IRQ)均勻分散到各個 CPU 核心上,避免單一核心過載,從而顯著提升系統整體效能與能源效率。
irqbalance 並非單純的「平均分配」,它會根據即時系統負載自動切換兩種模式:
若無 irqbalance,預設所有硬體中斷(網卡、磁碟控制器、GPU 等)可能全部由 CPU 0 處理,導致「單核滿載、多核閒置」的嚴重負載不平衡。這不僅拖垮效能,還會因頻繁的快取未命中與核心間遷移增加延遲。啟用服務後,系統能自動收集資料分析使用模式,動態調整中斷親和性,實現「高負載時榨乾效能、低負載時極致省電」。
在主流 Linux 發行版(RHEL/CentOS/Fedora/Debian/Ubuntu)中,通常預設已安裝並設為開機自啟。手動操作指令如下:
# 立即啟動服務
sudo systemctl start irqbalance
# 設定開機自啟
sudo systemctl enable irqbalance
# 查看服務狀態
sudo systemctl status irqbalance
舊版 SysVinit 系統可使用 service irqbalance start。
想親眼見證負載均衡成果?執行 cat /proc/interrupts 觀察各 CPU 核心的中斷計數。啟用 irqbalance 後,你會看到網卡、儲存控制器等高頻中斷源均勻分佈在 CPU0, CPU1, CPU2... 等核心上,而非堆疊在 CPU0。
irqbalance 是 Linux 多核心時代的「隱形優化大師」。它零配置、低開銷、智慧動態調節,既是伺服器高併發場景的效能加速器,也是筆電日常使用的續航守護者。請確保您的生產環境已啟用並正常運行此服務。