Windows-Server-2008-R2

處理器關聯遮罩 (IIS) 的公式

  • April 26, 2015

我有一台 24 核/48 GB RAM 伺服器機器,我想通過 IIS 高級設置將工作程序的處理器親和性設置為持續 12 個核,有什麼公式嗎,我不想通過任務管理器將親和性設置為這個池經常被回收。

http://www.iis.net/configreference/system.applicationhost/applicationpools/add/cpu

smpProcessorAffinityMask

可選的 uint 屬性。

指定多處理器電腦的十六進制處理器遮罩,它指示應將應用程序池中的工作程序綁定到哪個 CPU。在此屬性生效之前,應用程序池的 smpAffinitized 屬性必須設置為 true。

注意:在 64 位電腦上,smpProcessorAffinityMask 屬性包含處理器遮罩的低位 DWORD,而 smpProcessorAffinityMask2 屬性包含處理器遮罩的高位 DWORD。在 32 位電腦上,smpProcessorAffinityMask2 屬性無效。

如果將該值設置為 1(對應於二進制中的 00000000000000001),則應用程序池中的工作程序僅在第一個處理器上執行。如果將值設置為 2(對應於二進制中的 0000000000000010),則工作程序僅在第二個處理器上執行。如果將值設置為 3(對應於二進制中的 0000000000000011),則工作程序在第一個和第二個處理器上執行。

注意:不要將此屬性設置為 0。這樣做會禁用對稱多處理 (SMP) 關聯並創建錯誤條件。這意味著在一個 CPU 上執行的程序在其整個生命週期內都不會與該 CPU 保持關聯。

預設值為 4294967295。

首先,將 smpAffinitized 設置為 true。

處理器標識從右到左。從處理器 0 開始。要將關聯設置為最後 12 個處理器:

0000 0000 1111 1111 1111 0000 0000 0000

然後將其轉換為十六進制:

0x1FFE000

引用自:https://serverfault.com/questions/471105