affinity Input-Output mask (opção de configuração do servidor)

Aplica-se a:SQL Server

Para realizar multitarefas, o Microsoft , às vezes, movem threads de processos entre processadores diferentes. Embora seja eficiente de um ponto de vista de sistema operacional, essa atividade pode reduzir o desempenho do Microsoft SQL Server sob cargas de sistema pesadas, à medida que cada cache do processador é recarregado repetidamente com os dados. Atribuir processadores a threads específicos poderá melhorar o desempenho sob estas condições eliminando recargas de processador; tal associação entre um thread e um processador é chamada de afinidade de processador.

SQL Server dá suporte à afinidade de processador por meio de duas opções de máscara de afinidade: máscara de afinidade (também conhecida como máscara de afinidade de CPU) e máscara de E/S de afinidade. Para obter mais informações sobre a opção affinity mask , veja Opção affinity mask de configuração de servidor. O suporte para afinidade de CPU e E/S em servidores com 33 a 64 processadores exige o uso adicional da Opção affinity64 mask de configuração de servidor e Opção affinity64 Input-Output mask de configuração de servidor , respectivamente.

Observação

O suporte à afinidade para servidores com 33 a 64 processadores só está disponível em sistemas operacionais de 64 bits.

A opção affinity I/O mask associa o E/de disco de SQL Server a um subconjunto especificado de CPUs. Em ambientes OLTP (online transactional processing) avançados de SQL Server , esta extensão pode aumentar o desempenho de threads SQL Server que emitem E/S. Este aprimoramento não aceita afinidade de hardware para discos individuais ou controladores de disco.

O valor de affinity I/O mask especifica que CPUs em um computador multiprocessador são qualificadas para processar operações E/S de disco do SQL Server . A máscara é um bitmap no qual o bit mais à direita especifica a CPU de ordem mais inferior (0), o bit a sua esquerda imediata especifica a CPU de ordem inferior mais próxima (1) e assim por diante. Para configurar mais de 32 processadores, defina affinity I/O mask e affinity64 I/O mask.

Os valores de affinity I/O mask são os seguintes:

  • Uma affinity I/O mask de 1 byte abrange até 8 CPUs em um computador multiprocessador.

  • Uma affinity I/O mask de 2 bytes abrange até 16 CPUs em um computador multiprocessador.

  • Uma affinity I/O mask de 3 bytes abrange até 24 CPUs em um computador multiprocessador.

  • Uma affinity I/O mask de 4 bytes abrange até 32 CPUs em um computador multiprocessador.

  • Para abranger mais de 32 CPUs, configure uma affinity I/O mask de quatro bytes para as primeiras 32 CPUs e uma affinity64 I/O mask de até quatro bytes para as CPUs restantes.

1 bit no padrão de Afinidade E/S especifica que a CPU correspondente é elegível para executar SQL Server operações E/S de disco; um 0 bit especifica que nenhuma operação E/S de disco SQL Server deveria ser programada para a CPU correspondente. Quando todos os bits são definidos para zero ou a affinity I/O mask não é especificada, a E/S de disco do SQL Server é agendada para quaisquer das CPUs qualificadas para processar threads do SQL Server .

Como a configuração da opção máscara de E/S de afinidade do SQL Server é uma operação especializada, ela deve ser usada apenas quando necessário. Na maioria dos casos, a afinidade padrão de Windows 2000 ou Windows Server 2003 provê o melhor desempenho.

Ao especificar a opção affinity I/O mask , você deve usá-la com a opção de configuração affinity mask . Não habilite a mesma CPU nas opções affinity I/O mask e affinity mask . Os bits que correspondem a cada CPU deveriam estar em um dos três estados seguintes:

  • 0 nas opções affinity I/O mask e affinity mask .

  • 1 na opção affinity I/O mask e 0 na opção affinity mask .

  • 0 na opção affinity I/O mask e 1 na opção affinity mask .

affinity I/O mask é uma opção avançada. Se você estiver usando o procedimento armazenado do sistema sp_configure para alterar a configuração, será possível alterar affinity I/O mask apenas quando show advanced options estiver definido como 1. No SQL Server, reconfigurar a opção affinity I/O mask exige uma reinicialização da instância SQL Server .

Cuidado

Não configure afinidade de CPU no sistema operacional Windows e também configure a máscara de afinidade em SQL Server. Essas definições estão tentando alcançar o mesmo resultado e se as configurações forem inconsistentes, você poderá ter resultados imprevisíveis. SQL Server Você poderá configurar melhor a afinidade de CPU no com a opção sp_configure SQL Server.

Consulte Também

Monitorar o uso de recursos (Monitor do Sistema)
RECONFIGURE (Transact-SQL)
Opções de configuração do servidor (SQL Server)
sp_configure (Transact-SQL)