INF: Noções básicas sobre como definir a opção de afinidade de E/s do SQL Server

Traduções deste artigo Traduções deste artigo
ID do artigo: 298402 - Exibir os produtos aos quais esse artigo se aplica.
Expandir tudo | Recolher tudo

Sumário

Este artigo discute o que é afinidade de E/s e como usar a opção de afinidade de E/s está disponível no SQL Server 2000 SP1 ou posterior. Em uma transação on-line (OLTP) ambiente de processamento, a opção de afinidade de E/s pode fornecer aprimoramento de desempenho em ambientes de SQL Server high-end, nível de empresa que estão sendo executados em computadores com 16 ou mais CPUs. Essa opção oferece suporte somente a E/s do disco com SQL Server e não oferece suporte a qualquer afinidade de hardware para controladores de disco ou discos individuais.

Mais Informações

SQL Server 2000 Service Pack 1 amplia a funcionalidade da opção de configuração de máscara de afinidade do SQL Server 2000, introduzindo a opção IO_affinity_mask.

A opção de configuração de máscara de afinidade definida no procedimento sp_configure armazenados permite que você especificar quais CPUs em um computador com vários processadores estão a ser usado para executar threads de uma instância do SQL Server. Você pode usar a opção de configuração de máscara de afinidade para excluir segmentos do SQL Server de processadores que você deseja reservar para processos do sistema operacional. Para obter mais informações sobre a opção de máscara de afinidade , consulte livros online do SQL Server 2000. Da mesma forma, IO_affinity_mask lhe permite especificar quais CPUs estão configurados para executar threads do SQL Server relacionadas a operações de E/s.

Quando você está executando uma instância do SQL Server em computadores multiprocessador grandes e de nível empresarial com mais de 16 CPUs, você pode atingir benefícios de desempenho adicionais usando a opção IO_affinity_mask em conjunto com a opção de máscara de afinidade . Isso fornece a capacidade para especificar quais CPUs estão affinitized para operações de disco do SQL Server e que CPUs serviço o processamento restante associado ao SQL Server.

Em quase todos os casos, deixando IO_affinity_mask no padrão configuração resulta em melhor desempenho. Alguns sites podem ver uma melhora no desempenho, definindo a opção IO_affinity_mask .

Você pode criar um afunilamento de desempenho para requisitos de CPU relacionados não disco se o número de CPUs alocada para processamento de E/S de disco do SQL Server é mais de que o sistema precisa para processamento de E/S de disco. Por outro lado, um afunilamento de desempenho para disco E/S podem ser criada se você habilitar menos CPUs para processamento de E/S de disco do SQL Server que que o sistema precisa para processamento de E/S de disco.

Para ativar a opção IO_affinity_mask , você deve adicionar um parâmetro de entrada extra estático como um parâmetro de inicialização do SQL Server in Enterprise Manager ou na linha de comando sqlservr. (No momento, esta opção não está disponível para o procedimento sp_configure armazenados.) Por exemplo:

-I<IO_affinity_mask>

Uma descrição e informações sobre IO_affinity_mask da seguinte forma:

  • Especifica quais CPUs em um computador com vários processadores estão qualificados para processar operações de E/s de disco do SQL Server.
  • IO_affinity_mask é um número que pode ser especificado no (não especialmente conveniente para um grande número de CPUs) decimal ou hexadecimal se precedido por '0 x' ou ' 0 X '.
  • A máscara é um bitmap em que o bit mais à direita Especifica CPU(0) mais baixa ordem, o próximo bit mais à direita Especifica CPU(1) mais baixa ordem próxima e assim por diante.
  • Um um byte IO_affinity_mask aborda até 8 CPUs em um computador multiprocessador, uma máscara de dois bytes aborda até 16 CPUs, uma máscara de três bytes aborda CPUs até 24 e uma máscara de quatro bytes aborda até 32 CPUs.
  • Um um bit no padrão especifica que a CPU correspondente está qualificada para realizar operações de E/S de disco do SQL Server; um bit zero Especifica que operações de E/S de disco não SQL Server devem ser agendado para a CPU correspondente.
  • Quando todos os bits são definidos como 0 ou IO_affinity_mask não for especificado, E/s de disco do SQL Server está programado para qualquer um das CPUs qualificadas para processar os segmentos do SQL Server.
  • O valor da opção IO_affinity_mask não pode ser alterado enquanto o SQL Server está sendo executado. Para alterar a opção IO_affinity_mask você deve desligar a instância do SQL Server e, em seguida, reiniciá-lo com um novo valor especificado para IO_affinity_mask .
SQL Server 2000 interpreta os bits IO_affinity_mask da mesma forma que ele interpreta os bits de máscara de afinidade .

Se você especificar a opção IO_affinity_mask , a Microsoft sugere que você usá-lo em conjunto com a opção de configuração de máscara de afinidade . Certifique-se não habilitar uma CPU para ambas a IO_affinity_mask opção e affinity_mask opção.

Os bits correspondente a cada CPU devem ser em um dos seguintes três estados:
  • 0 tanto a opção IO_affinity_mask a opção de máscara de afinidade .
  • 1 na opção IO_affinity_mask e 0 na máscara de afinidade de opção.
  • 0 na opção IO_affinity_mask e 1 na máscara de afinidade de opção.
Por exemplo, considere um computador de 32 processador que está executando SQL Server, que requer a seguinte configuração:
  • SQL Server para usar 24 fora do 32 CPUs disponíveis.
  • Alocar 8 CPUs a E/S de disco de SQL Server e 16 CPUs para todos os outro processamento do SQL Server.
Para obter essa configuração, use estas etapas:
  1. Definir a opção máscara de afinidade para associar o SQL Server com 16 CPUs para processamento de SQL Server diferente a E/s de disco:
      sp_configure "affinity mask", 0x0000FFFF
      go
      reconfigure with override
      go
    					
  2. Desligamento do SQL Server.
  3. Inicie o SQL Server com a seguinte opção. Isso configura o SQL Server para usar 8 CPUs para E/s de disco:
      sqlservr -I0x00FF0000
    					
SQL Server requer sistemas para oferecer suporte a ? entrega de mídia estável garantida ? conforme descrito no programa do Microsoft SQL Server Always-On armazenamento Solution revisão. FOPara obter mais informações sobre os requisitos de entrada e saídas para o mecanismo de banco de dados do SQL Server, clique no número abaixo para ler o artigo na Base de dados de Conhecimento da Microsoft:
967576Requisitos do Microsoft SQL Server Database Engine entrada/saída

Propriedades

ID do artigo: 298402 - Última revisão: sexta-feira, 26 de outubro de 2007 - Revisão: 1.3
A informação contida neste artigo aplica-se a:
  • Microsoft SQL Server 2000 Service Pack 1
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Express
  • Microsoft SQL Server 2008 Standard
Palavras-chave: 
kbmt kbproductlink kbinfo kbsqlserv2000sp1fix KB298402 KbMtpt
Tradução automática
IMPORTANTE: Este artigo foi traduzido por um sistema de tradução automática (também designado por Machine Translation ou MT), não tendo sido portanto traduzido ou revisto por pessoas. A Microsoft possui artigos traduzidos por aplicações (MT) e artigos traduzidos por tradutores profissionais, com o objetivo de oferecer em português a totalidade dos artigos existentes na base de dados de suporte. No entanto, a tradução automática não é sempre perfeita, podendo conter erros de vocabulário, sintaxe ou gramática. A Microsoft não é responsável por incoerências, erros ou prejuízos ocorridos em decorrência da utilização dos artigos MT por parte dos nossos clientes. A Microsoft realiza atualizações freqüentes ao software de tradução automática (MT). Obrigado.
Clique aqui para ver a versão em Inglês deste artigo: 298402

Submeter comentários

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com