Configurar a opção cost threshold for parallelism de configuração de servidor

Aplica-se a: simSQL Server (todas as versões compatíveis)

Este tópico descreve como configurar a opção de configuração de servidor cost threshold for parallelism no SQL Server usando o SQL Server Management Studio ou o Transact-SQL. A opção cost threshold for parallelism especifica o limite no qual o SQL Server cria e executa planos paralelos para consultas. SQL Server cria e executa um plano paralelo para uma consulta somente quando o custo estimado para executar um plano serial para a mesma consulta é mais alto que o valor definido em cost threshold for parallelism. O custo refere-se a um custo estimado, exigido para a execução do plano serial em uma configuração de hardware específica, e não é uma unidade de tempo. A opção cost threshold for parallelism pode ser definida como qualquer valor de 0 a 32767.

Neste tópico

Antes de começar

Limitações e restrições

  • O custo refere-se a uma unidade abstraída do custo, e não a uma unidade de tempo estimado. Defina apenas cost threshold for parallelism em multiprocessadores simétricos.

  • SQL Server ignora o valor do cost threshold for parallelism nas seguintes condições:

    • Seu computador só tem um processador lógico.

    • Só um único processador lógico está disponível para o SQL Server devido à opção de configuração máscara de afinidade .

    • A opção max degree of parallelism está definida como 1.

Um processador lógico é a unidade básica de hardware de processador que permite que o sistema operacional despache uma tarefa ou execute um contexto de thread. Cada processador lógico pode executar somente um contexto de thread de cada vez. O núcleo do processador é o circuito que fornece capacidade para decodificar e executar instruções. O núcleo de um processador pode conter um ou mais processadores lógicos. A consulta Transact-SQL a seguir pode ser usada para obter informações de CPU para o sistema.

SELECT (cpu_count / hyperthread_ratio) AS PhysicalCPUs,   
cpu_count AS logicalCPUs   
FROM sys.dm_os_sys_info  

Recomendações

  • Esta é uma opção avançada e deve ser alterada somente por um administrador de banco de dados experiente ou por um profissional de SQL Server certificado.

  • Em certos casos, pode ser escolhido um plano paralelo, embora o plano de custo da consulta seja menor do que o valor atual do cost threshold for parallelism . Isso pode acontecer pois a decisão de usar um plano paralelo ou serial tem base em uma estimativa de custo fornecida anteriormente no processo de otimização. Para obter mais informações, consulte o Guia da arquitetura de processamento de consultas.

  • Embora o valor padrão de 5 seja adequado para a maioria dos sistemas, um valor diferente pode ser adequado. Execute testes de aplicativos com valores superiores e inferiores, se necessário, para otimizar o desempenho do aplicativo.

Segurança

Permissões

Permissões de execução sem parâmetros ou com apenas o primeiro parâmetro em sp_configure são concedidas a todos os usuários por padrão. Para executar sp_configure com ambos os parâmetros para alterar uma opção de configuração ou executar a instrução RECONFIGURE, o usuário deve ter a permissão ALTER SETTINGS no nível do servidor. A permissão ALTER SETTINGS é implicitamente mantida pelas funções de servidor fixas sysadmin e serveradmin .

Usando o SQL Server Management Studio

Para configurar a opção cost threshold for parallelism

  1. No Pesquisador de Objetos, clique com o botão direito do mouse em um servidor e selecione Propriedades.

  2. Clique no nó Avançado .

  3. Em Paralelismo, altere a opção Limite de Custo para Paralelismo para o valor desejado. Digite ou selecione um valor de 0 a 32767.

Usando o Transact-SQL

Para configurar a opção cost threshold for parallelism

  1. Conecte-se ao Mecanismo de Banco de Dados.

  2. Na barra Padrão, clique em Nova Consulta.

  3. Copie e cole o exemplo a seguir na janela de consulta e clique em Executar. Este exemplo mostra como usar sp_configure para definir o valor da opção cost threshold for parallelism como 10.

USE AdventureWorks2012 ;  
GO  
EXEC sp_configure 'show advanced options', 1 ;  
GO  
RECONFIGURE  
GO  
EXEC sp_configure 'cost threshold for parallelism', 10 ;  
GO  
RECONFIGURE  
GO  

Para obter mais informações, veja Opções de configuração do servidor (SQL Server).

Acompanhamento: depois de configurar a opção cost threshold for parallelism

A configuração entra em vigor imediatamente sem reiniciar o servidor.

Consulte Também

Configurar operações de índice paralelo
Dicas de consulta (Transact-SQL)
ALTER WORKLOAD GROUP (Transact-SQL)
Opção affinity mask de configuração de servidor
RECONFIGURE (Transact-SQL)
Opções de configuração do servidor (SQL Server)
sp_configure (Transact-SQL)