desenv-web-rp.com

Qual é a diferença entre multicore proc e sistema multiproc?

Eu me pergunto qual é a diferença entre um computador dual core e um computador com 2 processadores na placa-mãe. Eu acho que é algo relacionado com o threads mas eu não entendo muito bem ..

18
bAN

Múltiplos processadores permitem que seu computador literalmente duas coisas de uma vez (em vez de apenas fazer duas coisas de uma só vez, mas na verdade apenas trocando as tarefas extremamente rapidamente).

Múltiplos núcleos são os mesmos. A vantagem de múltiplos núcleos sobre vários processadores é que eles compartilham alguns pedaços da CPU, e. O segundo cache de nível, o que possibilita que eles trabalhem ainda mais eficientemente se tiverem alguns dados compartilhados. Isso os torna muito mais baratos para fabricar. Uma única CPU dual-core também ocupa menos sala do que duas CPUs de núcleo único, que é um fator importante atualmente com todos se movendo para laptops.

Pode haver algumas diferenças de desempenho, mas nada que você provavelmente notará.

19
John Fouhy

Veja esta imagem que mostra a diferença entre multi processador, hyper rosnado e multi núcleo:

enter image description here

13
claws

Você deve começar com multi-core e multithread artigos na Wikipedia.

3
nik

Bem, é sobre escala horizontalmente em vez de verticalmente. Nos velhos tempos, eles costumavam fazer a CPU mais rápido e mais rápido. Com o tempo, a velocidade da CPU aumentou apenas de um punhado de megahertz para super velocidades variando até 3 Gigahertz. No entanto, quando a velocidade de 3 Gigahertz foi atingida que os fabricantes de CPU tivessem encontrado um limite para até onde eles poderiam empurrar a velocidade em um único núcleo de CPU.

Enquanto esta corrida de velocidade estava acontecendo, para aqueles aplicativos que precisavam de mais poder (como servidores e fazendas de renderização de CGI), as placas de CPU multi-soquete onde introduzidas. Isso permitiu ser mais de uma CPU (geralmente dois) para ser colocado na placa-mãe. Sistemas operacionais que, quando capazes de utilizar várias CPUs de uma só vez, poderiam executar o software que se aproveitou desse recurso, distribuindo a carga sobre essas duas CPUs, aumentando, portanto, a velocidade de execução.

Avanço rápido para o dia presente. O limite de velocidade da CPU é um pouco alcançado e, em vez de dimensionar verticalmente (tornando-o mais rápido), as fabricantes de CPU estão começando a escalar horizontalmente colocando vários núcleos em um único chip. Atualmente, chips de núcleo dual são muito comuns e logo os núcleos quad são o padrão. Agora imagine que você colocasse dois núcleos quad em uma única placa-mãe. Isso significaria que o sistema operacional teria acesso a 8 CPUs, todos funcionando em torno de 3 Gigahertz.

Além de uma CPU multi-core, há também uma CPU principal de "falsa" que usa uma tecnologia conhecida como "hiper-threading". Com hiper-threading, a CPU emula a presença duas CPU quando há na realidade apenas um núcleo real presente. A CPU sabe como fazer uso do que normalmente seria o tempo de inatividade agendando instruções de maneira específica, ganhando mais eficiência.

2
Luke

De uma perspectiva de desenvolvimento de software há relativamente pouca diferença.

Alguns aplicativos multi-roscados incorretamente escritos podem funcionar acidentalmente em um processador multi-core, mas não em uma placa-mãe multi-processador, mas eu não perderia muito sono sobre isso, já que ... Bem ... estamos falando incorretamente software escrito.

A principal diferença entre os dois cenários para o mesmo número total de núcleos disponíveis (por exemplo, processador 1x 4-core vs. 2x 2-core processador) é que, no caso do cenário multi-processador, há tipicamente uma memória agregada maior. -bandwidth. Isso significa que, para qualquer carga de trabalho que seja intensiva de memória, você pode estar melhor com o último. Observe, no entanto, que as primitivas de travamento podem realmente ser um pouco mais lenta (dependendo da implementação de hardware), de modo que os algoritmos que usam muita sincronização podem realmente ser piores no último.

Mesmo assim, eu não me preocuparia muito com a diferença, mesmo assim, porque se você trabalha em uma área onde essa diferença é importante, você provavelmente já saberá sobre isso (conhecimento específico do domínio).

1
jerryjvl