Núcleos da CPU: quanto mais, melhor?

68

Atualmente tenho um processador dual-core no trabalho e um quad-core em casa. Eu notei que ambos os PCs são bem iguais no que diz respeito ao lançamento de aplicativos / navegar na web.

A diferença que vejo é que meu dual-core é de 2,8 GHz e meu quad-core é de 2,4 GHz.

É melhor ter um dual-core com uma velocidade de clock rápida ou um quad-core com uma velocidade de clock medíocre?

    
por Travis 29.01.2011 / 19:28

12 respostas

53

NOTA: Esta resposta foi escrita há 8 anos. A programação paralela, desde então, tornou-se mais relevante. Isso provavelmente se deve aos limites inerentes de velocidade do clock e aos limites de tamanho dos transistores que se aproximam rapidamente.

Seu principal problema é o software não escrito para vários núcleos.

Veja o excelente artigo de Jeff Atwood sobre Como escolher o Dual core ou o Quad Core .

for most software, you hit a point of diminishing returns very rapidly after two cores. In Quad-Core Desktops and Diminishing Returns, I questioned how effectively today's software can really use even four CPU cores, much less the inevitable eight and sixteen CPU cores we'll see a few years from now.

Você é respondido aqui (destaque copiado do artigo de Jeff),

However, there were some surprises in here, such as Excel 2007, and the Lost Planet "concurrent operations" setting. It's possible software engineering will eventually advance to the point that clock speed matters less than parallelism. Or eventually it might be irrelevant, if we don't get to make the choice between faster clock speeds and more CPU cores. But in the meantime, clock speed wins most of the time. More CPU cores isn't automatically better. Typical users will be better off with the fastest possible dual-core CPU they can afford.

A questão do Front-Side Bus (esse termo sempre me divertiu ). Com o Nehalem as coisas mudam ... como a ArsTechnica disse no ano passado.

Moore's Law has given processor designers an embarrassment of transistor riches, and nowhere is that more apparent than in Intel's 45nm Nehalem processor. Debuting in 4- and 8-core variants later this year, Nehalem packs a ton of hardware into a single processor socket. (Early numbers put the transistor count of a quad-core Nehalem at 781 million; no numbers for the 8-core model have appeared yet.) But trying to feed all of that hardware with the Intel platform's existing frontside bus architecture would be folly. So, just as importantly, Nehalem also sounds the long-overdue death knell for Intel's positively geriatric frontside bus architecture.

The radical change in Intel's system bandwidth situation that Intel's new QuickPath Interconnect (QPI) represents is perhaps the largest single factor that shaped Nehalem's design. Between QuickPath and Nehalem's integrated memory controller, a Nehalem processor will have access to an unprecedented amount of aggregate bandwidth, especially in two- and four-socket implementations.

A AMD moveu o controlador de memória para o processador anteriormente e usou o Hypertransport.

    
por 23.06.2017 / 04:29
18

Existe, na minha experiência, um enorme benefício de desempenho de um a dois núcleos. De repente, um programa de CPU alto não trancar sua máquina ou torná-la inutilmente lenta. Maciço diferença.

Mas dois para quatro? Para 99% das pessoas, não fará diferença. Você terá que estar executando muitos programas em uma vez ou estar usando programas que podem aproveitar mais de 2 núcleos (e realisticamente não há muitos Essa). Determinados codificadores de mídia vêm à mente.

Há também uma diferença entre o Intel Core 2s e o AMD Phenoms a este respeito. A AMD usa o Hypertransport, que é um protocolo ponto a ponto para que cada núcleo tenha dedicado largura de banda. Intel Core 2s (mas não Core i7s e outros CPUs baseadas em Niehalem) usam um barramento frontal, que é compartilhado largura de banda para que você tenha mais núcleos competindo pelo mesmo largura de banda.

Isso pode potencialmente fazer um mesmo clock quad core (marginalmente) mais lento em algumas circunstâncias. Valor pelo dinheiro ainda está com dual núcleos IMHO. Dito isto, eu tenho um quad core.

    
por 03.08.2009 / 15:40
10

Eu gosto de como Donald Knuth resume :

To me, it looks more or less like the hardware designers have run out of ideas, and that they’re trying to pass the blame for the future demise of Moore’s Law to the software writers by giving us machines that work faster only on a few key benchmarks! I won’t be surprised at all if the whole multithreading idea turns out to be a flop, worse than the "Itanium" approach that was supposed to be so terrific—until it turned out that the wished-for compilers were basically impossible to write.

Let me put it this way: During the past 50 years, I’ve written well over a thousand programs, many of which have substantial size. I can’t think of even five of those programs that would have been enhanced noticeably by parallelism or multithreading. Surely, for example, multiple processors are no help to TeX.

Para alguns aplicativos, é muito fácil aproveitar vários núcleos. Mas algumas outras aplicações nunca se beneficiarão delas, enquanto as outras poderão se beneficiar se os desenvolvedores as otimizarem (o que é muito difícil).

    
por 15.07.2009 / 17:53
5

Para meu desktop principal no meu empregador, eu uso uma máquina Xeon dual-core com 8 GB de RAM.

Quando estou programando, e tenho o Internet Explorer, o Chrome, o TweetDeck, o Visual Studio 2008 (ou 2010) e uma instância local do Sql Server Express ... tudo fica bem.

Comparativamente, eu tinha um dual core antes, e as coisas começavam a engatinhar apenas com o Visual Studio, o Chrome e o Sql Express sendo executados.

É uma questão do que você faz com a máquina. Se você é um usuário avançado que será edição de vídeo, modelagem 3D ou programação com recursos significativos, então sim, você desejará o quad-core e muita memória RAM.

    
por 15.07.2009 / 17:48
1

Para o uso diário e programas que não são otimizados para múltiplos núcleos, um dual-core rápido supera um quad-core mais lento.

À medida que o tempo passa e os aplicativos multitarefa propriamente ditos se tornam a norma, os quatro núcleos vão avançar.

De um ponto de vista para sua perspectiva de investimento, os núcleos duplos ainda têm uma vantagem confortável.

    
por 15.07.2009 / 17:43
1

Depende. Se você está fazendo coisas que usarão cada núcleo, 4 núcleos são melhores (edição de vídeo, renderização, etc). A maioria das pessoas vai encontrar dois núcleos rápidos melhor no momento, porque não são muitas aplicações escritas para tirar o máximo proveito de 4 núcleos

    
por 15.07.2009 / 17:43
1

Observe que os processadores i7 mais recentes podem realmente aumentar a velocidade do clock nos núcleos ativos quando nem todos eles são necessários; por exemplo, se você tem um quad-core em 2.4GHz, mas o software só precisa de dois núcleos para rodar, então ele pode automaticamente atingir o clock de 2.8GHz (não um número real, apenas um exemplo).

E a última geração do i7 eu acho que pode agendar 3 ou 4 caixas se apenas um ou dois núcleos forem necessários. Como tal, pode não acabar sendo tão difícil como atualmente é ...

    
por 15.07.2009 / 17:49
1

De acordo com o Anandtech.com :

It all boils down to the TDP of the chip, or its Thermal Design Point. The more TDP constrained a platform is, the more you stand to gain from Intel’s Turbo mode. Let me put it another way; in order to fit four cores into a 130W TDP, each core has to run at a lower clock speed than if we only had one core at that same TDP.

At higher TDPs, there’s usually enough thermal headroom to run the individual cores pretty high. At lower TDPs, CPU manufacturers have to make a tradeoff between the number of cores and their clock speeds - that’s where we can have some fun.

Isso tudo está no contexto de ter que escolher entre núcleos (ou threads) e frequência central.

    
por 15.07.2009 / 18:56
0

No seu caso, o quad-core seria melhor. Lembre-se, quanto mais núcleos você tiver, mais processamento paralelo poderá fazer. Então, no seu dual-core, você pode rodar um único aplicativo mais rápido que o quad, mas o quad pode rodar 4 apps mais rápido do que o dual. Além disso, se um aplicativo é gravado para processar em paralelo (multi-threaded), o aplicativo funcionará melhor em uma arquitetura multi-core.

Isso é tudo relativo, no entanto, como um quad-core rodando a 100 Mhz não vai executar um dual-core de 4 Ghz. De um modo geral, porém, quanto mais núcleos, melhor.

    
por 15.07.2009 / 17:43
0

Depende do que você está fazendo e dos recursos do seu sistema operacional e aplicativos.

Se você tem um sistema operacional leve e executa um único aplicativo vinculado à CPU que pode usar apenas um processador, dois processadores a uma velocidade maior serão a melhor opção.

Caso contrário, se o sistema operacional puder agendar todos os núcleos com eficácia e você estiver executando muitos aplicativos ou aplicativos que podem usar mais de um processador, o núcleo quadri-lo deverá esperar um melhor desempenho para menor consumo de energia e menos calor saída.

    
por 15.07.2009 / 17:44
0

Se você estiver fazendo muitas codificações de vídeo, renderização 3D ou compilações de código-fonte distribuídas, quanto mais núcleos, melhor. Você verá uma diferença marcante no desempenho desses tipos de aplicativos à medida que você passa de 1 para 2 para 4 para 8 núcleos.

Caso contrário, a execução de aplicativos padrão realmente não se beneficiará de mais núcleos. Mesmo os jogos não exploram muito os múltiplos núcleos. IMO, é melhor gastar o dinheiro em uma placa gráfica melhor.

    
por 15.07.2009 / 17:46
0

Depende.

Muito mesmo.

Você pode encontrar facilmente um quad-core usando apenas dois núcleos. Isso tem a ver, em parte, com o sistema operacional e com o design do software. Mais ainda, eles ainda compartilham todo o resto, particularmente a memória, o disco e os dispositivos.

Você sabe que o sistema operacional não inicializa (notadamente) com mais rapidez e que as páginas da Web não são baixadas mais rapidamente (no entanto, elas podem ser desenhadas com mais rapidez).

    
por 20.07.2009 / 07:41