Como o desempenho do Windows é afetado por hardware e software

Em teoria, o software de 32 bits poderia superar seu equivalente de 64 bits, dependendo da configuração do hardware. Soa complicado? Estamos aqui para fazer sentido e ajudá-lo a obter o melhor desempenho do seu sistema.

Em teoria, o software de 32 bits poderia superar seu equivalente de 64 bits, dependendo da configuração do hardware.  Soa complicado?  Estamos aqui para fazer sentido e ajudá-lo a obter o melhor desempenho do seu sistema.
Propaganda

Com todos os avanços na tecnologia de computação, pode ser difícil manter a corrente. O jargão jogado pelos vendedores ao comprar um novo dispositivo raramente ajuda e parece que aqueles que o estão empurrando em direção a um computador específico não entendem como a computação de 64 bits O que é computação de 64 bits? O que é computação de 64 bits? A embalagem de um computador ou hardware de computador está cheia de termos técnicos e crachás. Um dos mais proeminentes é o de 64 bits. Leia mais funciona ou beneficia o usuário além da capacidade de acessar mais memória RAM Quanto RAM você realmente precisa? Quanto RAM você realmente precisa? RAM é como memória de curto prazo. Quanto mais você multitarefa, mais você precisa. Descubra quanto seu computador tem, como tirar o máximo proveito dele ou como obter mais. Consulte Mais informação .

Neste artigo, veremos como o sistema operacional e o software de aplicativo escolhidos para execução em um sistema de 64 bits, bem como alguns recursos do próprio processador, afetam o desempenho geral do computador.

Processador e Sistema Operacional

Quase todos os PCs no mercado atual estão rodando com processadores de 64 bits e a maioria deles já terá uma versão de 64 bits do Windows 4 Maneiras fáceis de saber se você estiver em uma versão de 64 bits do Windows 4 maneiras fáceis de saber Se você estiver em uma versão de 64 bits do Windows Você está usando um processador que suporta um sistema operacional de 64 bits e está executando um sistema operacional de 64 bits? O usuário de PC médio off-and-on provavelmente não sabe as respostas a estas perguntas, embora eles devem .... Leia mais pré-instalado nele. Este emparelhamento é fundamental quando você deseja obter o melhor desempenho do seu sistema. Embora você possa instalar um sistema operacional de 32 bits em um computador de 64 bits, você perderia os benefícios adicionais do hardware.

Quando você instala um sistema operacional de 32 bits Qual é a diferença entre o Windows de 32 e 64 bits? Qual é a diferença entre o Windows de 32 e 64 bits? Você sabe se o seu computador é de 32 ou 64 bits e isso importa? Sim! Vamos dar uma olhada em onde esses termos vêm e o que eles significam para você. Leia mais em um computador de 64 bits, o efeito é uma conversão instantânea de um processador de 64 bits para um processador de 32 bits.

  • Todas as instruções no nível do processador são limitadas ao uso de registradores de 32 bits, portanto todas as funções matemáticas nativas são similarmente limitadas em relação ao seu alcance e precisão.
  • A quantidade de memória física que pode ser acessada cai para 4 GB, mesmo se houver mais memória instalada Desbloqueia até 64 GB de RAM no Windows de 32 bits Com o patch da PAE Desbloqueia até 64 GB de RAM no Windows de 32 bits com o patch PAE usando uma máquina Windows de 32 bits e frustrado com o limite de 4 GB de RAM? Um ajuste de linha de comando relativamente simples permite que você corrija seu sistema e aproveite até 64 GB de RAM. Consulte Mais informação .
  • A memória de hardware, como a memória de vídeo, consumirá uma parte da memória endereçável em vez de ser movida acima dela ou terá RAM remapeada em torno dos endereços de memória de hardware.
  • Todos os outros softwares que você deseja executar no sistema devem ser de 32 bits e serão limitados pelos mesmos parâmetros.

Essa é a melhor razão para garantir que você esteja usando um sistema operacional de 64 bits em qualquer computador que tenha um processador de 64 bits.

Capacidades do processador

Além de emparelhar um sistema operacional apropriado com o hardware, elementos do design da CPU estão afetando o desempenho do sistema. O número de núcleos disponíveis para fazer o processamento é um dos grandes.

De um único núcleo

Cerca de duas décadas atrás, quase todos os computadores comercializados para os consumidores usavam processadores com um único núcleo de processamento. O que é um núcleo de processador? [MakeUseOf explica] O que é um núcleo de processador? [MakeUseOf Explains] Todo computador tem um processador, seja um pequeno profissional de eficiência ou uma grande usina de alto desempenho, ou então não seria capaz de funcionar. Claro, o processador, também chamado de CPU ou Processamento Central ... Leia Mais no pacote. Com esse tipo de design, isso significava que o computador só podia executar uma única instrução por vez e o sistema operacional só podia atribuir um único encadeamento de execução ao processador por vez.

desmantelamento-velho-computador

Hoje, um único wafer de silício pode ter 2, 4 ou mais núcleos nele e o pacote pode ter mais de um chip. Colocando mais de um único núcleo no pacote do processador, o sistema operacional vê cada núcleo como um processador individual, no qual ele pode atribuir encadeamentos de processo, e cada núcleo opera independentemente dos outros. Assim, em um quad-core O que significa "Dual Core" e "Quad Core"? O que significa "Dual Core" e "Quad Core"? Há muito tempo atrás, seu processador veio com um único núcleo. Atualmente, a maioria das CPUs tem no mínimo dual core e, mais provavelmente, quad core. Mas o que significa dual, quad ou octo-core? Leia mais sistema, o computador pode executar quatro instruções simultaneamente - um em cada núcleo.

Conectando Núcleos com Hyperthreading

Em 2002, a Intel lançou a tecnologia hyperthreading O que é Hyper-Threading? [Tecnologia Explicada] O que é Hyper-Threading? [Technology Explained] Leia mais, o que faz com que o sistema operacional “veja” dois processadores lógicos para cada núcleo de processamento no chip. Ele funciona com dois conjuntos distintos de dados de estado do processador, um para cada processador lógico e um único núcleo de execução compartilhado. Isso permite que o sistema operacional atribua um encadeamento de execução a cada processador lógico que mantém seus próprios dados de estado. Quando um encadeamento é bloqueado porque está aguardando dados ou outro recurso, o outro processador lógico pode usar o núcleo de execução para seu processamento, a menos que ele também esteja em um estado de espera. Ganhos de desempenho usando essa tecnologia tendem a variar de 15 a 30%.

Processador e Processador Intel® Core ™ i7 de 4ª Geração

Isso não significa que um processador quad-core seja duas vezes mais rápido que um processador dual-core que funcione com a mesma velocidade de clock em uma determinada situação ou que um processador Intel com hyperthreading funcionará melhor do que um sem a tecnologia. Certos fatores de software podem anular completamente a existência de núcleos de processamento adicionais.

Impacto do software aplicativo

Então, agora que você decidiu adquirir um novo processador dual-core Intel de 64 bits com hyperthreading e combiná-lo com uma versão de 64 bits do Windows, você obterá o melhor desempenho possível, certo? Bem, talvez.

Embora os sistemas operacionais modernos possam tirar proveito de todo o hardware que ele oferece, talvez o software aplicativo que você está usando não seja o software legado.

As CPUs de núcleo único mais antigas que mencionei acima só podiam manipular o processamento de um único thread por vez. Grande parte da programação feita naquela época foi escrita para usar apenas um único thread. Usar esse software em um sistema multi-core ainda resultará nele usando apenas um núcleo para esse encadeamento. É por isso que você pode ver um sistema quad-core rodando a 25% de carga no Gerenciador de Tarefas com um único núcleo a 100% de utilização e os outros três núcleos aparentemente ociosos. A carga de trabalho não está espalhada.

uso do processador

Para aproveitar todos os núcleos de processamento em um sistema, o software deve ser projetado com processamento paralelo e multithreading em mente. A ideia aqui é dividir o problema em componentes distintos que podem ser completados independentemente um do outro, para que o computador possa completar cada tarefa em núcleos separados simultaneamente. Isso pode reduzir o tempo gasto para gerar o resultado desejado. Isso também significa que um encadeamento para a interface do usuário não é bloqueado quando um processamento pesado de outros encadeamentos está acontecendo em outros núcleos.

Mesmo que um programa tenha sido projetado com o multithreading em mente, ainda existe a possibilidade de que algumas de suas funcionalidades não possam ser paralelizadas. Um exemplo disso é aplicativos do Microsoft Office que usam macros do Visual Basic for Applications (VBA). Uma macro de longa duração provavelmente consumirá um núcleo inteiro até que termine. Como um computador não pode determinar automaticamente se uma macro pode ser paralelizada, ela simplesmente não tenta fazê-lo.

Melhorar o desempenho de aplicativos de thread único

Se você precisar usar aplicativos legados de thread único, especialmente se precisar executar vários aplicativos simultaneamente, sua melhor opção para obter um melhor desempenho é definir a afinidade do processador com eles. Isso irá forçá-los a usar apenas núcleos de processamento específicos. Ao fazer isso, você pode garantir que, mesmo que consumam todo o poder de processamento de um núcleo, eles não farão isso no mesmo núcleo, fazendo com que os processos demorem mais para serem concluídos do que o absolutamente necessário.

Com o Windows, você pode definir a afinidade abrindo o Gerenciador de Tarefas, clique com o botão direito do mouse no nome do processo, selecione Definir Afinidade ... no menu de contexto, limpe as caixas de seleção de todos os processadores que não deseja usar e clique em OK .

afinidade do processador

Você também pode fazer isso a partir da linha de comando usando o sinalizador / affinity do comando start.

start /affinity 2 notepad.exe 

Observe que o número do processador usado com o sinalizador de afinidade é baseado em 1, enquanto ele é baseado em zero ao analisar o Gerenciador de Tarefas, de modo que isso iniciaria o Bloco de Notas na CPU 1.

Uma funcionalidade semelhante existe para usuários do Linux com o comando taskset. Faz parte do pacote util-linux e faz parte da instalação padrão da maioria das distros. Se não estiver atualmente no seu sistema, você pode instalá-lo com

 sudo apt-get install util-linux 

para distribuições baseadas em Debian ou

 sudo yum install util-linux 

para sistemas baseados em Red Hat.

Para usar o comando para iniciar o vlc na CPU 2, você usaria

 taskset -c 2 vlc 

Para alterar a afinidade de um processo que já está sendo executado com um ID de processo (PID) de 9021 para usar as CPUs 4 e 5, você usaria

 taskset -cp 4, 5 9021 

O outro fator com os aplicativos é o tamanho da palavra. Enquanto um aplicativo de 32 bits ainda pode armazenar e manipular números inteiros e de ponto flutuante de 64 bits, isso deve ser feito por meio de bibliotecas “big math” que demoram mais para executar o trabalho do que um processador de 64 bits fazendo os mesmos cálculos . Se um aplicativo exigir o alcance estendido e uma precisão maior oferecida pelos números de 64 bits, sempre será mais eficiente usar aplicativos de 64 bits 3 Sites para encontrar software compatível com sistemas operacionais de 64 bits 3 sites para encontrar software compatível com 64 bits É provável que aqueles de vocês que estão comprando um novo computador no próximo ano estejam colocando em suas mãos algo que esteja executando um sistema operacional de 64 bits. x64 tem seus prós e contras, mas ... Leia Mais para a tarefa.

Com algum software, não importa muito se é de 32 bits ou 64 bits. Um navegador da Web de 32 bits funcionará muito bem para a maioria das pessoas. Com o uso normal, não deve exigir montes de memória, mesmo se você quiser ter dezenas de abas abertas. Ele utilizará facilmente vários threads em seus processadores físicos e lógicos e não deverá acabar com a CPU. O mesmo se aplica à maioria das tarefas de processamento de texto. Mas se você for realizar a edição de foto ou vídeo, transcodificação, executar o software de modelagem ou executar outras tarefas intensivas da CPU ou trabalhar com grandes conjuntos de dados, poderá esperar mais tempo do que o necessário sem o software multithreaded de 64 bits.

O último take

Então, qual é a melhor opção? Melhor resposta: depende.

Se você sabe que estará executando uma planilha do Excel em seu sistema que usa macros VBA de longa execução, seria melhor ter um sistema dual-core rodando a 3 GHz em vez de um quad-core rodando a 2, 2 GHz, mas se você estiver constantemente saltando entre vários programas multithreaded enquanto faz seu trabalho de computador ou jogo, o inverso é verdadeiro.

Embora as generalizações nunca sejam comprovadas em todos os casos, o melhor desempenho de computação de desktops atualmente utilizará processadores multi-core de 64 bits executando um moderno sistema operacional de 64 bits e aplicativos multithread de 64 bits para as tarefas mais exigentes.

Que tipo de experiências você teve com o desempenho de 64 bits? Você tem um software de 32 bits que supera sua contraparte de 64 bits ou não há diferença perceptível entre eles? Deixe-nos saber nos comentários abaixo.

Crédito de imagem: Desmantelando um computador antigo (CC by 2.0) por fdecomite, Processador Intel® Core ™ i7 de 4ª geração à frente e atrás (CC by 2.0) da Intel in Deutschland

In this article