Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Gäller för:SQL Server
För att utföra multitasking flyttar Windows ibland processtrådar mellan olika processorer. Även om den är effektiv ur operativsystemssynpunkt kan den här aktiviteten minska SQL Server-prestanda under tunga systembelastningar, eftersom varje processorcache läses in upprepade gånger med data. Att tilldela processorer till specifika trådar kan förbättra prestanda under dessa förhållanden genom att eliminera processoromladdningar. en sådan association mellan en tråd och en processor kallas processortillhörighet.
SQL Server stöder processortillhörighet med två alternativ för tillhörighetsmask: affinity mask (kallas även cpu-tillhörighetsmask) och affinity I/O mask. Mer information om alternativet finns i affinity maskServerkonfiguration: tillhörighetsmask. Cpu- och I/O-tillhörighetsstöd för servrar med 33 till 64 processorer kräver att du också använder konfigurationsalternativen affinity64 mask och affinity64 I/O-maskserver .
Anmärkning
Stöd för tillhörighet för servrar med 33 till 64 processorer är endast tillgängligt på 64-bitars operativsystem.
Alternativet affinity I/O mask binder SQL Server-disk-I/O till en angiven delmängd av processorer. I avancerade OLTP-miljöer (Online TransactionAl Processing) i SQL Server kan det här tillägget förbättra prestandan för SQL Server-trådar som utfärdar I/Os. Den här förbättringen stöder inte maskinvarutillhörighet för enskilda diskar eller diskkontrollanter.
Värdet för affinity I/O mask anger vilka processorer på en dator med flera processorer som är berättigade att bearbeta I/O-åtgärder för SQL Server-diskar. Masken är en bitmapp där den högra biten anger cpu(0) i lägsta ordning, biten till vänster om den anger processorn i näst lägsta ordningen(1) och så vidare. Om du vill konfigurera fler än 32 processorer anger du både affinity I/O mask och affinity64 I/O mask.
Värdena för affinity I/O mask är följande:
| Byte i mask | Antal processorer |
|---|---|
| 1 byte | Upp till 8 processorer |
| 2 byte | Upp till 16 processorer |
| 3 byte | Upp till 24 processorer |
| 4 byte | Upp till 32 processorer |
Om du vill täcka fler än 32 processorer konfigurerar du en 4-byte affinity I/O mask för de första 32 processorerna och upp till 4 byte affinity64 I/O mask för de återstående processorerna.
En 1 bit i I/O-mönstret för tillhörighet anger att motsvarande CPU är berättigad att utföra SQL Server-diskens I/O-åtgärder. En 0 bit anger att inga SQL Server-disk-I/O-åtgärder ska schemaläggas för motsvarande CPU. När alla bitar är inställda på 0, eller affinity I/O mask inte har angetts, schemaläggs SQL Server-diskens I/O till någon av de processorer som är berättigade att bearbeta SQL Server-trådar.
Eftersom det är en specialiserad åtgärd att ange SQL Server-alternativet affinity I/O mask använder du det bara när det behövs. I de flesta fall ger standardtillhörigheten för Windows bästa prestanda.
När du anger alternativet affinity I/O mask måste du använda det med konfigurationsalternativet affinity mask . Aktivera inte samma CPU i både växeln affinity I/O mask och alternativet affinity mask . Bitarna som motsvarar varje CPU ska vara i något av följande tre tillstånd:
-
0i både alternativetaffinity I/O maskoch alternativetaffinity mask. -
1i alternativetaffinity I/O maskoch0i alternativetaffinity mask. -
0i alternativetaffinity I/O maskoch1i alternativetaffinity mask.
Alternativet affinity I/O mask är ett avancerat alternativ. Om du använder den sp_configure system lagrade proceduren för att ändra inställningen kan du bara ändra affinity I/O mask när show advanced options är inställd på 1. Om du konfigurerar affinity I/O mask om alternativet i SQL Server krävs en omstart av SQL Server-instansen.
Försiktighet
Konfigurera inte CPU-tillhörighet i Windows-operativsystemet och konfigurera affinity mask även i SQL Server. De här inställningarna försöker uppnå samma resultat, och om konfigurationerna är inkonsekventa kan du få oförutsägbara resultat. SQL Server CPU-tillhörighet konfigureras bäst med hjälp av den sp_configure system lagrade proceduren i SQL Server.