Defina o MAXDOP para o maior desempenho - AWS Orientação prescritiva

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Defina o MAXDOP para o maior desempenho

O grau máximo de paralelismo (MAXDOP) é uma opção de configuração do servidor para executar o SQL Server em vários. CPUs Ele controla o número de processadores usados para executar uma única instrução na execução paralela do plano. O valor padrão é 0, que permite que o SQL Server use todos os processadores disponíveis. Isso pode afetar o desempenho e não é ideal para a maioria dos casos de uso.

Use as diretrizes a seguir ao configurar o valor MAXDOP para o SQL Server.

Nós NUMA Processadores lógicos Valor MAXDOP
Único ≤ 8 4, 2 ou número de núcleos (para um ou dois núcleos)
Único > 8 8, 4, ou 2
Vários ≤ 16 8, 4, ou 2
Vários > 16 16, 8, 4, ou 2
nota

Definir o MAXDOP como 2, 4 ou 8 geralmente fornece os melhores resultados na maioria dos casos de uso. Recomendamos que você teste sua workload e monitore qualquer tipo de espera relacionada ao paralelismo, como CXPACKET.

Você pode usar a consulta a seguir para reunir a configuração NUMA atual para o SQL Server 2016 e versionamentos posteriores:

select @@SERVERNAME, SERVERPROPERTY('ComputerNamePhysicalNetBIOS'), cpu_count, hyperthread_ratio, softnuma_configuration, softnuma_configuration_desc, socket_count, numa_node_count from sys.dm_os_sys_info

em que:

  • cpu_countrefere-se ao número de lógicos CPUs no sistema.

  • hyperthread_ratio é a proporção do número de núcleos que são expostos por um processador físico.

  • softnuma_configuration é 0, 1, ou 2:

    • 0 (OFF): default

    • 1 (automated): soft-NUMA

    • 2 (manual): soft-NUMA

  • softnuma_configuration_desc é OFF, ON, ou MANUAL:

    • OFF indica que o atributo soft-NUMA está desativado.

    • ON indica que o SQL Server decide automaticamente os tamanhos dos nós NUMA.

    • MANUAL indica que o soft-NUMA está configurado manualmente.

  • socket_count é o número de soquetes do processador.

  • numa_node_count é o número de nós NUMA disponíveis no sistema.

Para verificar o valor atual do MAXDOP, use:

$ sp_configure 'max_degree_of_parallelism'

Para obter mais informações sobre o MAXDOP, consulte a documentação do Microsoft SQL Server.