/ sys / kernel / debug / tracing / per_cpu mostra muito mais cpus do que eu

1

Eu tenho 8 CPUs lógicas na minha caixa linux. (Como visto em /proc/cpuinfo ). Quando eu olho em

/sys/kernel/debug/tracing/per_cpu

mostra 32 CPUs.

Por que a diferença? Se é importante, tenho hyperthreading desativado no BIOS.

    
por MK. 04.03.2014 / 19:46

2 respostas

0

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 cresceu a partir da capacidade inicial do CPUs Pentium 4 de fazer o que foi denominado Hyper Threading (HTT) .

Era 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. Assim, a CPU poderia, de fato, trabalhar em duas coisas simultaneamente.

Núcleos mais recentes são CPUs mais completas, então eles estão trabalhando em várias coisas simultaneamente, mas não são CPUs verdadeiras como os núcleos físicos são. Você pode ler mais sobre as limitações da funcionalidade de hyperthreading versus as capacidades físicas do núcleo aqui em tomshardware neste artigo intitulado: Intel Core i5 e Core i7: Mainstream da Intel Magnum Opus .

Você pode ver a divisão da sua caixa usando o comando lscpu :

$ 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

No acima, meu laptop Intel i5 tem 4 "CPUs" no total

CPU(s): 4

dos quais existem 2 núcleos físicos

Core(s) per socket: 2

dos quais cada um pode executar até 2 threads

Thread(s) per core: 2

ao mesmo tempo. Esses segmentos são os recursos lógicos do núcleo.

lstopo

Você pode usar a ferramenta lstopo para obter um diagrama real da topografia do seu sistema. Isso às vezes é útil para entender o que é significativo na arquitetura da CPU.

"PU P#" = Processing Unit Processor #. These are processing elements within the cores of the CPU. On my laptop (Intel i5) I have 2 cores that each have 2 processing elements, for a total of 4. But in actuality I only have 2 physical cores.

Se você quiser mais uma análise detalhada da saída lstopo , dê uma olhada na minha resposta nesta Pergunta e Pós-graduação intitulada A: Interpretar a saída do lstopo .

Referências

por 06.03.2014 / 14:07
0

Há uma listagem separada para cada núcleo. Eu estou supondo que seu sistema tem 8 CPUs lógicas com 4 núcleos cada.

    
por 04.03.2014 / 22:39