Este artigo explica todos os pontos-chave das máscaras de afinidade de CPU em SQL Server.
Para facilitar o processo de multitarefa, o Microsoft Windows geralmente faz uma mudança nos threads de processo pertencentes a diferentes processadores. Isso pode ajudar quando visto do ponto de vista do sistema operacional, mas também pode atrasar o desempenho do aplicativo quando há uma carga pesada no sistema. Como o cache do processador para cada processo será recarregado junto com os dados. O desempenho pode ser melhorado reduzindo a carga de recarregamentos do processador e reduzindo a migração de encadeamento que ocorre entre os processos. Essa associação que existe entre um determinado thread e um processador é referida como uma afinidade de processador.
Máscaras de afinidade para dar suporte à afinidade do processador no SQL Server
In SQL Server A afinidade do processador é suportada por duas opções diferentes de máscaras de afinidade.
- Máscara de afinidade da CPU (também chamada de máscara de afinidade)
- Máscara de E/S de afinidade
Estaríamos mantendo nosso foco hoje em máscaras de afinidade, ou seja, CPU Affinity Mask.
máscara de afinidade
Esta era a opção que estava disponível nas edições anteriores do SQL Server por padrão e era responsável por controlar dinamicamente a afinidade da CPU. Esta opção no SQL Server ainda pode ser configurada mesmo sem restarting seu SQL Server instância. Se você estiver usando sp_configure, deverá usar RECONFIGURE ou a alternativa RECONFIGURE WITH OVERRIDE, depois de definir a opção de configuração. Se você estiver usando a edição Express do SQL Server então você será obrigado a restart sua instância para alterar a máscara de afinidade.
As máscaras de afinidade também permitem mudanças dinâmicas que podem permitir starconfiguração e desligamento de agendadores de CPU sob demanda. Esses agendadores de CPU são responsáveis por vincular os threads de processo dentro SQL Server. Isso ocorre quando há alteração nas condições do requerimento; isso pode incluir a adição de uma nova instância. As mudanças nas máscaras de afinidade são necessárias também porque ajudam na redistribuição da carga no processador.
Modificações em Affinity Bitmasks
Para introduzir modificações nos bitmasks Affinity, você precisará SQL Server para fazer uso de um agendador de CPU totalmente novo e interromper o existente. Este novo agendador será usado apenas para os lotes recentes, e os lotes existentes continuarão usando o antigo agendador. Os trabalhadores terão que migrar para este agendador recém-criado.
Para desligar um agendador, você primeiro terá que garantir que os lotes que estão atualmente colocados nesse agendador tenham todas as suas atividades concluídas. Depois que um agendador é encerrado, ele é marcado como off-line para garantir que nenhum dos novos lotes seja agendado nele.
Se você optar por adicionar ou remover um novo agendador, sistemas permanentes como ponto de verificação, monitor de bloqueio, thread de tarefa do sistema, juntamente com o processo de sinal, continuarão em execução no agendador quando o servidor continuar operacional. Essas tarefas permanentes do sistema não serão migradas dinamicamente, para redistribuir a carga do processador para todas essas tarefas; você vai ter que restart a instância.
Ao trabalhar com operações complexas ou tarefas de migração de dados, mantenha sempre uma ferramenta útil que possa corrigir sql banco de dados do servidor para lidar com as situações.
Introdução do autor:
Victor Simon é um especialista em recuperação de dados em DataNumen, Inc., líder mundial em tecnologias de recuperação de dados, incluindo recuperação de acesso e produtos de software de recuperação SQL. Para mais informações visite www.datanumen.com
Deixe um comentário