配置執行緒給 CPU

依預設,SQL Server 的每個執行個體都會啟動每個執行緒。作業系統接著會指定每個執行緒給特定的 CPU。作業系統會從 SQL Server 的執行個體,平均地將執行緒分配給電腦上的微處理器或 CPU。有時候,作業系統也會將執行緒從工作負擔繁重的 CPU 移到其他 CPU 上。

SQL Server 管理員可以使用 affinity mask 組態選項以排除一或多個不適合的 CPU 從 SQL Server 的特定執行個體執行執行緒。affinity mask 值可指定位元模式,以指出用以從 SQL Server 執行個體執行執行緒的 CPU。例如,affinity mask 值 13 代表位元模式 1101。在擁有四個 CPU 的電腦上,這表示 SQL Server 的該執行個體之執行緒可以在 CPU 0、2 及 3 上排程,但不能在 CPU 1 上排程。如果指定 affinity mask,SQL Server 的執行個體就會在未遮罩掉的 CPU 之間平均配置執行緒。另一個 affinity mask 的效果是作業系統不會將執行緒從某個 CPU 移動到另一個 CPU。不過,affinity mask 並不常使用。大部份的系統只要讓作業系統在可用的 CPU 之間排程執行緒,就可獲得最佳的效能。

請參閱

概念

使用 lightweight pooling 選項
SQL Server 批次或工作排程
瞭解非統一記憶體存取

說明及資訊

取得 SQL Server 2005 協助