CPU 集合

CPU 集合提供 API,以與 OS 電源管理相容的「軟式」方式宣告應用程式親和性。 此外,API 也提供應用程式能夠使用 進程預設 機制將進程中的所有背景執行緒重新關聯至處理器子集,以避免進程內的 OS 執行緒干擾。 某些版本的 Windows 支援核心保留原則,其中系統 CPU 集合的子集可以專門用於個別應用程式和工作負載的獨佔用途。

CPU 集合 API 適用于與虛擬處理器親和性相關聯的 CPU 集識別碼。 在大部分系統上,而且在大部分情況下,每個 CPU 集合識別碼都會直接對應至單一 邏輯處理器。 與指定 CPU 集合同構的執行緒通常會在其所選 CPU 集識別碼清單中的其中一個處理器上執行。

您可以藉由檢查SYSTEM_CPU_SET_INFORMATION中的 [配置 ] 旗標來判斷保留的 CPU 集合。 系統會使用 SYSTEM_CPU_SET_INFORMATION 結構的 AllocatedToTargetProcess 旗標來查詢保留 CPU 集的存取權,以及查詢指派。 如果進程嘗試使用獨佔配置給其他進程的 CPU 集合指派,則會忽略其要求,並將指派給不允許 CPU 集合的執行緒排程到其他地方。 CPU 集合可以在兩個層級指派。 進程預設 CPU 集合會指派給進程中沒有線程選取層級指派的所有線程。 如果執行緒或進程已設定嚴格的親和性遮罩,則會遵守同質遮罩高於任何衝突的 CPU 集指派。 在多群組系統上,如果 CPU 指派位於不符合執行緒親和性遮罩中群組的群組中,則會忽略 CPU 指派。 如果執行緒指派給多個有效的 CPU 集合,它會根據其優先順序和這些處理器上競爭執行緒的優先順序,在其中一個對應的處理器上執行。

CPU 集合函式/列舉/結構