Práticas recomendadas para executar o SQL Server em computadores com mais de 64 CPUs
Este tópico fornece informações de práticas recomendadas a serem consideradas durante a execução de uma instância do SQL Server em computadores com mais de 64 CPUs.
Atribuindo threads de hardware a CPUs
Não use as opções de configuração de servidor affinity mask e affinity64 mask para associar processadores a threads específicos. Estas opções se limitam a 64 CPUs. Use ALTER SERVER CONFIGURATION (Transact-SQL).
Gerenciando o tamanho do arquivo de logs de transações
Não confie no aumento automático para aumentar o tamanho do arquivo do log de transação. O aumento do log de transação deve ser um processo serial. A extensão do log pode impedir a continuação de operações de gravação de transação até que a extensão de log seja concluída. Pré-aloque espaço para os arquivos de log definindo o tamanho de arquivo com um valor grande o suficiente para dar suporte à carga de trabalho comum no ambiente.
Definindo o grau máximo de paralelismo para operações de índice
O desempenho de operações de índice como a criação ou recriação de índices pode melhorar em computadores com muitas CPUs; basta definir temporariamente o modelo de recuperação do banco de dados como modelo bulk-logged ou de recuperação simples. Essas operações de índice podem gerar atividade de log significativa e a contenção de log pode afetar a opção DOP (melhor grau de paralelismo) definida pelo SQL Server.
Além disso, procure ajustar a configuração de MAXDOP (grau máximo de paralelismo) para essas operações. As diretrizes a seguir se baseiam em testes internos e são recomendações gerais. Experimente diferentes configurações de MAXDOP para determinar a configuração ideal para o seu ambiente.
Para o modelo de recuperação completo, limite o valor da opção grau máximo de paralelismo a oito ou menos.
Para o modelo bulk-logged ou o modelo de recuperação simples, procure definir o valor da opção grau máximo de paralelismo como superior a oito.
Para servidores com o item NUMA configurado, o grau máximo de paralelismo não deve exceder o número de CPUs atribuídos a cada nó NUMA. Isso ocorre pois é mais provável que a consulta utilize memória local de 1 nó NUMA, podendo melhorar o tempo de acesso à memória.
Para servidores com hyper-threading habilitado e fabricados em 2009 ou antes, o valor MAXDOP não deve exceder o número de processadores físicos.
Para obter mais informações sobre a opção max degree of parallelism, consulte Grau de paralelismo.
Configurando o número máximo de threads de trabalho
Sempre defina o número máximo de threads de trabalho para ser superior à configuração para o grau máximo de paralelismo. O número de threads de trabalho sempre deve ser definido como um valor de pelo menos sete vezes o número de CPUs presentes no servidor. Para obter mais informações, consulte Opção max worker threads.
Usando o Rastreamento do SQL e o SQL Server Profiler
É recomendável que você não use o Rastreamento do SQL e o SQL Server Profiler em um ambiente de produção. A sobrecarga para a execução dessas ferramentas também aumenta à medida que o número de CPUs cresce. Se você usar o Rastreamento do SQL em um ambiente de produção, limite o número de eventos de rastreamento a um nível mínimo. Crie perfis e teste cuidadosamente cada evento de rastreamento sob carga e evite usar combinações de eventos que afetem o desempenho de modo significativo.
Configurando o número de arquivos de dados tempdb.
Em geral, o número de arquivos de dados tempdb deve corresponder ao número de CPUs. No entanto, ao considerar cuidadosamente as necessidades de simultaneidade de tempdb, você pode reduzir o gerenciamento do banco de dados. Por exemplo, se um sistema tiver 64 CPUs e geralmente apenas 32 consultas usam tempdb, o aumento do número de arquivos tempdb para 64 não melhorará o desempenho. Para obter mais informações, consulte Otimizando o desempenho de tempdb.
Componentes do SQL Server que podem usar mais de 64 CPUs
A tabela a seguir lista os componentes do SQL Server e indica se eles podem usar mais de 64 CPUs.
Nome do processo |
Programa executável |
Usar mais de 64 CPUs |
---|---|---|
Mecanismo de banco de dados do SQL Server |
Sqlserver.exe |
Sim |
Reporting Services |
Rs.exe |
Não |
Analysis Services |
As.exe |
Não |
Integration Services |
Is.exe |
Não |
Service Broker |
Sb.exe |
Não |
Pesquisa de texto completo |
Fts.exe |
Não |
SQL Server Agent |
Sqlagent.exe |
Não |
SQL Server Management Studio |
Ssms.exe |
Não |
Instalação do SQL Server |
Setup.exe |
Não |
Consulte também