Descrição do problema
O sistema operacional exibe menos processadores lógicos do que as vCPUs especificadas para o tipo de instância ECS.
Causas
Limitação de parâmetro BOOT: um parâmetro
numprocouonecpunos Dados de Configuração de Inicialização (BCD) do Windows limita a contagem de processadores.Hyper-threading desativado: a opção Threads per Core está definida como 1 na configuração da instância ECS ou uma chave de registro desativou o hyper-threading.
Solução
Remover a limitação de parâmetro de inicialização
Remova o parâmetro de inicialização que limita a contagem de núcleos da CPU.
-
Conecte-se a uma instância ECS.
Acesse ECS console - Instances. No canto superior esquerdo, selecione a região e o grupo de recursos da instância de destino.
Abra a página de detalhes da instância de destino. Clique em Connect e selecione Workbench. Defina o método de conexão como Terminal Connection, insira seu nome de usuário e senha e conecte-se ao terminal gráfico.
-
Remova a limitação do parâmetro BOOT.
Clique com o botão direito no ícone
, clique em Run, insira powershelle pressione Enter.-
Consulte a configuração de inicialização atual:
bcdedit -
Verifique na saída se os parâmetros
numprocouonecpuestão presentes. Se estiverem, exclua-os. Substitua<identifier>pelo identificador do carregador de inicialização do Windows obtido na saída anterior.# Delete the processor count limit bcdedit /deletevalue "<identifier>" numproc # Delete the single-processor mode limit bcdedit /deletevalue "<identifier>" onecpuSe o identificador for
{current}, executebcdedit /deletevalue "{current}" numprocebcdedit /deletevalue "{current}" onecpuconforme necessário. Reinicie a instância para aplicar as alterações.
Ativar o hyper-threading
Se nenhum parâmetro de inicialização limitar a contagem de CPUs, verifique a configuração de hyper-threading.
-
Pare a instância.
As opções de CPU só podem ser alteradas quando a instância estiver no estado Stopped.
-
Modifique a configuração.
Acesse ECS console - Instances.
Clique no ID da instância para abrir sua página de detalhes. Na seção Configuration Information, clique em Change CPU Options.
Na caixa de diálogo, verifique se Threads per Core não está definido como 1. O valor 1 desativa o hyper-threading.
-
Inicie a instância.
Inicie a instância e verifique a contagem de processadores lógicos.
Corrigir hyper-threading desativado via registro
Se Threads per Core não estiver definido como 1, verifique se alguma política de segurança desativou o hyper-threading. Consulte KB4072698.
Conecte-se à instância ECS. Clique com o botão direito no ícone
, clique em Run e insira regeditpara abrir o Editor do Registro.Acesse:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory ManagementVerifique a existência das chaves
FeatureSettingsOverrideeFeatureSettingsOverrideMask. Se existirem, definaFeatureSettingsOverridecomo 72 eFeatureSettingsOverrideMaskcomo 3.Reinicie a instância para aplicar as alterações.