Por que nunca usar MAXDOP 0 - Búfalo Informática
Dica No : 1165
Titulo: Por que nunca usar MAXDOP 0
Todos já sabemos que nunca devemos utilizar MAXDOP 1. Porém a alternativa normalmente parte para o MAXDOP 0 e esta também é uma opção muito ruim.
Quando se utiliza MAXDOP 0 o SQL Server tem liberdade de utilizar quantos cores desejar da sua máquina, até o limite de 64, o que para a maioria dos servidores significa todos. Isso quer dizer que cada query paralela utilizará todos os cores.
Porém, ao utilizar todos os cores, as vezes sem necessidade, a query concorre com outras queries que desejam ser processadas. Vamos fazer uma conta muito simplificada para mostrar como poderia ser melhor: você tem 8 cores. Se inserir um MAXDOP 4, cada query utilizará 4 cores. Assim você pode ter duas queries usando 4 cores rodando em paralelo, cada uma em 4 diferentes cores da máquina! (Lembre-se: simplifiquei a conta).
Assim sendo o correto é sempre preencher o MAXDOP. Pode aplicar a seguinte formula para definir o MAXDOP: cores/ (nós numa * 1.5) Isso partindo do principio de ter NUMA e estar com hyperthreading habilitado