
Ok, eu conheço o argumento clássico para evitar quad core. No nível do aplicativo, a maioria dos aplicativos não foi escrita para múltiplos núcleos. A maioria dos softwares de desktop nem precisa de paralelização.
No entanto, no nível do sistema operacional, parece óbvio que o sistema operacional dividiria os processos entre os vários núcleos. Isso não seria por si só um argumento para obter mais núcleos? Isso não ajuda muito em muitas situações? Você realiza algumas tarefas intensivas de CPU - cada um desses processos pode estar consumindo 100% de seus núcleos, mas ainda posso navegar na web e fazer perguntas sobre o SuperUser em meu último núcleo... certo?
Responder1
O sistema operacional não pode dividir um processo individual de thread único em vários núcleos (embora possa alterar em qual núcleo um aplicativo está sendo executado, mas essa é uma questão diferente), mas pode executar vários processos, cada um em seu próprio núcleo. Então, sim, se você tiver vários aplicativos com uso intensivo de processador em execução em segundo plano, é provável que ainda tenha um núcleo sobressalente fazendo pouco ou nada que possa ser usado para executar outros aplicativos.
Responder2
Para complementar a resposta de @heavyd, a razão para isso é que o sistema operacional não tem a capacidade de determinar quais partes do processo podem ser executadas em paralelo e quais não. Se um programa não for projetado para ser executado em núcleos paralelos, você poderá ter rotinas dentro do aplicativo projetadas para serem executadas sequencialmente ao mesmo tempo. Isso pode causar todos os tipos de problemas (como se duas rotinas usassem o mesmo bloco de memória, mas não fossem executadas ao mesmo tempo).
O sistema operacional pode usar vários núcleos para vários processos, já que faz isso de qualquer maneira, mas espalhar um aplicativo de núcleo único por vários núcleos causará todo tipo de comportamento inesperado.
Responder3
No final das contas, não importa se um processador está com 1% de uso ou 95% de uso (desde que esteja estável em 95% e sem pico), os programas estarão rodando na mesma velocidade, desde que não está atingindo 100%. Os ciclos de CPU não utilizados são simplesmente desperdiçados.
Por causa disso, o Windows 7 (em processadores compatíveis) possui uma tecnologia conhecida como “core parking” que basicamente desativa núcleos não utilizados no seu computador para economizar eletricidade.
Aplicativos de thread único são automaticamente transferidos para núcleos alternativos - não tenho certeza da tecnologia por trás disso, mas sei que funciona muito bem.
Responder4
Seus sentimentos iniciais estão corretos - HÁ uma inclinação negativa em relação a múltiplos núcleos e não é tudo o que merece.
Na época em que a maioria dos usuários usava seu PC de mesa apenas para processamento de texto simples, pode ter havido uma discussão. Mas hoje em dia, com navegadores com várias guias, cada um em seu próprio processo (o Chrome e, por exemplo, fazem separação em nível de processo para guias), além de coisas como decodificadores de vídeo em páginas da web e tarefas extras que podem ser facilmente descarregadas em tempo real renderização de efeitos, também conhecida como css3, até mesmo o navegador sozinho pode justificar uma razão para muito mais memória RAM e alguns núcleos.
Acrescente a isso o fato de que alguns usuários também podem jogar neste PC ou usar ferramentas como garageband, imovie, handbrake e múltiplos núcleos pode ser um grande benefício.
Não é verdade supor que você precisa maximizar (ou seja, 100% de uso da CPU em um único núcleo) um núcleo para que outro núcleo seja útil. Porque estamos falando de paralelismo aqui. A troca de tarefas dentro de uma CPU geralmente executa um lote de operações antes de trocar sua pilha para outro processo. Nem todas essas tarefas estão vinculadas à CPU, então você não verá um pico de CPU mesmo que o núcleo esteja bloqueado.
Basicamente, você está certo, mas qual é o número de núcleos mais eficiente? 2? 4? 12? Isso provavelmente dependeria dos hábitos dos usuários... Costumo fazer isso de 2 a 4 para a maioria dos usuários, mas estou apenas supondo.