騰訊工程師最近向 Linux 內核社區提交了一套全新的 “語義感知(Semantics-aware)vCPU 調度方案”,專門優化 KVM 虛擬機在 vCPU 超額訂閲(over-subscription) 情況下的性能問題。
在雲環境中,虛擬機數量通常會多於物理 CPU,這會導致激烈的調度爭用,尤其是在 IPI(進程間中斷)和同步頻繁的應用場景下。騰訊工程師提出的解決方案通過十個補丁引入兩項關鍵機制:
-
vCPU debooster:在資源爭用時動態降低部分 vCPU 的搶佔程度,減少調度衝突。
-
IPI-aware directed yield:當虛擬機內部出現大量同步/中斷操作時,調度器能智能“讓步”,降低等待開銷。
騰訊工程師在測試中表示,在 2–3 倍超額訂閲 的典型雲環境場景下,性能提升顯著,其中某些“dedup”壓力測試中的性能提升可達 47%。在更高超額場景(如 4 台 VM 並行)雖然增益縮小,但新機制依舊保持“性能不倒退”,具備良好的退化特性。
這套補丁目前處於內核社區審查階段,一旦被接受,將明顯改善雲廠商與虛擬化平台在資源超額部署情況下的整體效率,為高密度虛擬化帶來更好的性能體驗。