O Windows pode ser configurado para usar apenas um único encadeamento de hardware?

3

É possível configurar o Windows para usar apenas um único encadeamento de hardware. Cada máquina nos últimos anos parece ser pelo menos dual-core, mas alguns erros de tempo só são reproduzíveis quando os threads são executados em série. Estou particularmente interessado no Windows Vista.

    
por Tom Hawtin - tackline 27.05.2009 / 03:06

4 respostas

5

David, vamos primeiro abordar sua pergunta direta: como restringir o Windows Vista a um núcleo.

Eu vejo duas maneiras:

(a) Execute seu Vista em uma máquina virtual no Hyper-V e forneça à VM apenas um processador lógico. Isso deixa o resto da máquina em bom estado.

(b) Como alternativa, você pode usar a opção / numproc = 1 no boot.ini para forçar a máquina a use um único processador. Você pode configurar isso através do msconfig.

  1. Clique em Iniciar, clique em Executar, digite msconfig e clique em OK.
  2. Clique na guia "Boot".
  3. Clique em "Opções avançadas ..."
  4. Clique para selecionar a caixa de seleção "Número de processadores" e selecione "1".
  5. Clique em OK duas vezes e, em seguida, reinicie o computador.

texto alternativo http://i39.tinypic.com/141789i.png

Mas talvez seja suficiente restringir apenas o seu programa a um único núcleo e, em seguida, definindo a afinidade do processador é a resposta preferível. Isto pode ser conseguido através da configuração ou diretamente do seu código de processo.

Além destes, você também pode querer considerar ferramentas avançadas de depuração multitreading, como Verificador de threads da Intel se isso se aplica ao seu ambiente.

    
por 06.06.2009 / 10:58
3

O que você está procurando é como definir a 'afinidade de processo' e como você a define depende de qual programa você está iniciando e de como você está iniciando.

Eu vi esta resposta no estouro de pilha: stackoverflow.com/questions/827754/ .. ..

    
por 27.05.2009 / 03:19
0

Além disso, muitas máquinas podem ter o SMP (& hyperthreading, se relevante) desativado no BIOS.

Erros de tempo (ou o subconjunto comum de condições de corrida) parecem ser mais geralmente reproduzíveis em máquinas com vários núcleos.

    
por 27.05.2009 / 04:16
0

Você desejaria a opção / onecpu no boot.ini olhe aqui: link

    
por 06.06.2009 / 10:41