Núcleos físicos são apenas isso, núcleos físicos dentro da CPU. Núcleos lógicos são as habilidades de um único núcleo para fazer 2 ou mais coisas simultaneamente. Isso surgiu da capacidade inicial das CPUs Pentium 4 de fazer o que foi chamado de Hyper Threading (HTT) .
Era um pouco de um jogo que estava sendo jogado onde subcomponentes do núcleo não estavam sendo usados para certos tipos de instruções, enquanto outra instrução de longa duração poderia estar sendo executada. Portanto, a CPU poderia funcionar com duas coisas simultaneamente.
Os núcleos mais recentes são CPUs de pleno direito, portanto, eles estão trabalhando em várias coisas simultaneamente, mas não são verdadeiras CPUs como os núcleos físicos. Você pode ler mais sobre as limitações da funcionalidade hyperthreading versus os recursos físicos do núcleo aqui no tomshardware neste artigo intitulado: Intel Core i5 e Core i7: o mainstream Magnum Opus da Intel .
Você pode ver o detalhamento de sua caixa usando o lscpu
comando:
$ lscpu
Architecture: x86_64
CPU op-mode(s): 32-bit, 64-bit
CPU(s): 4
Thread(s) per core: 2
Core(s) per socket: 2
CPU socket(s): 1
NUMA node(s): 1
Vendor ID: GenuineIntel
CPU family: 6
Model: 37
Stepping: 5
CPU MHz: 2667.000
Virtualization: VT-x
L1d cache: 32K
L1i cache: 32K
L2 cache: 256K
L3 cache: 3072K
NUMA node0 CPU(s): 0-3
Acima, meu laptop Intel i5 possui 4 "CPUs" no total
CPU (s): 4
dos quais existem 2 núcleos físicos
Núcleo (s) por soquete: 2
dos quais cada um pode executar até 2 threads
Tópico (s) por núcleo: 2
ao mesmo tempo. Esses encadeamentos são os recursos lógicos do núcleo.
lscpu
. Existe alguma ferramenta alternativa?lscpu
usa é exposto aqui:cat /proc/cpuinfo
. Qual é o seu sistema operacional?Core(s) per socket
timesThread(s) per core: 2
=CPU(s): 4
? Corrigir?Núcleos físicos são o número de núcleos físicos, componentes de hardware reais.
Núcleos lógicos são o número de núcleos físicos vezes o número de threads que podem ser executados em cada núcleo através do uso de hyperthreading.
por exemplo, meu processador de 4 núcleos executa dois threads por núcleo, então eu tenho 8 processadores lógicos.
fonte
Portanto, um único núcleo de processador pode executar dois threads independentes simultaneamente .
Intel refere-se a um processador físico como um soquete.
O Hyperthreading faz com que um Processador Físico se comporte como se tivesse dois Processadores Físicos, chamados Processador Lógico. porque?
Embora o hyperthreading não duplique o desempenho de um sistema, ele pode aumentar o desempenho utilizando melhor os recursos inativos, resultando em maior taxa de transferência para certos tipos importantes de carga de trabalho. Um aplicativo em execução em um processador lógico de um núcleo ocupado pode esperar um pouco mais da metade da taxa de transferência obtida durante a execução sozinha em um processador não com hyperthread.
Sumário
Processador físico é que podemos ver e cair.
Processador lógico é como, um núcleo físico atuando como dois núcleos físicos
fonte
Duas tomadas Cada soquete possui 14 núcleos físicos. Cada núcleo possui dois threads (28/14). O número total de "cpus" lógicos ou unidades de processamento lógico é 56 (é isso que "top" e alguns outros comandos mostram como número de "cpus").
fonte
lscpu shows CPUs 4 and threads per 2 (=8) but
lshw -C cpu` mostra 16 cpu lógicas numeradas de 0 a 15lscpu
saída e é realmente 4 threads total, mas "lshw -C cpu` mostra 16 da CPU lógica" Eu não tenho certeza do que fazer com isso.