Enquanto eu aprendia sobre a carga da CPU, soube que isso depende do número de núcleos. Se eu tiver 2 núcleos, o carregamento 2 fornecerá 100% de utilização da CPU.
Então eu tentei descobrir núcleos. (Eu já sei que o sistema tem 2 núcleos, 4 threads de modo 2 núcleos virtuais Confira aqui sobre o processador ) .Assim eu corri cat /proc/cpuinfo
o que me deu
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 69
model name : Intel(R) Core(TM) i7-4500U CPU @ 1.80GHz
stepping : 1
microcode : 0x17
cpu MHz : 774.000
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 2
apicid : 0
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid
bogomips : 3591.40
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 69
model name : Intel(R) Core(TM) i7-4500U CPU @ 1.80GHz
stepping : 1
microcode : 0x17
cpu MHz : 1600.000
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 0
cpu cores : 2
apicid : 1
initial apicid : 1
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid
bogomips : 3591.40
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
processor : 2
vendor_id : GenuineIntel
cpu family : 6
model : 69
model name : Intel(R) Core(TM) i7-4500U CPU @ 1.80GHz
stepping : 1
microcode : 0x17
cpu MHz : 800.000
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 1
cpu cores : 2
apicid : 2
initial apicid : 2
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid
bogomips : 3591.40
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
processor : 3
vendor_id : GenuineIntel
cpu family : 6
model : 69
model name : Intel(R) Core(TM) i7-4500U CPU @ 1.80GHz
stepping : 1
microcode : 0x17
cpu MHz : 774.000
cache size : 4096 KB
physical id : 0
siblings : 4
core id : 1
cpu cores : 2
apicid : 3
initial apicid : 3
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx pdpe1gb rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 fma cx16 xtpr pdcm pcid sse4_1 sse4_2 movbe popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm abm ida arat epb xsaveopt pln pts dtherm tpr_shadow vnmi flexpriority ept vpid fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid
bogomips : 3591.40
clflush size : 64
cache_alignment : 64
address sizes : 39 bits physical, 48 bits virtual
power management:
Agora estou totalmente confuso. Ele mostra 4 processadores, com 2 núcleos de CPU. Alguém pode explicar essa saída?
Depois que minha carga da CPU era 3,70, essa carga é máxima? Ainda naquela época, a CPU estava em <50%.
E o turbo boost? Todos os núcleos são turbinados ou apenas físicos?
Algum método no Ubuntu para obter a frequência atual da CPU para ver se o processador está no turbo boost ou não?
A carga foi de 3,70 cerca de 100%. Mas o uso da CPU não foi 100% por causa do tempo de resposta de E / S. Isso não significa que o dispositivo IO estará na velocidade máxima, mas o dispositivo io estará 100% ocupado, o que às vezes afeta aplicativos usando IO ex: a música pode quebrar.
core id
). Ophysical id
te dá o chip (eu acho). Aqui, é 0 para todos os processadores, então você tem apenas um chip.Respostas:
As palavras "CPU", "processador" e "núcleo" são usadas de maneiras um tanto confusas. Eles se referem à arquitetura do processador. Um núcleo é a menor unidade independente que implementa um processador de uso geral; um processador é um conjunto de núcleos (em alguns sistemas ARM, um processador é um conjunto de clusters que são conjuntos de núcleos). Um chip pode conter um ou mais processadores (os chips x86 contêm um único processador, nesse sentido do processador de texto ).
Hyperthreading significa que algumas partes de um núcleo são duplicadas. Às vezes, um núcleo com hyperthreading é apresentado como um conjunto de dois "núcleos virtuais" - o que significa que cada núcleo não é virtual, mas que o plural é virtual porque na verdade não são núcleos separados e, às vezes, eles precisam esperar enquanto o outro núcleo é fazendo uso de uma parte compartilhada.
No que diz respeito ao software, existe apenas um conceito que é útil em quase toda parte: a noção de encadeamentos paralelos de execução. Portanto, na maioria dos manuais de software, os termos CPU e processador são usados para designar qualquer peça de hardware que executa o código do programa. Em termos de hardware, isso significa um núcleo ou um núcleo virtual com hyperthreading.
Assim
top
, você mostra 4 CPUs, porque você pode ter 4 threads em execução ao mesmo tempo./proc/cpuinfo
possui 4 entradas, uma para cada CPU (nesse sentido). Osprocessor
números (que são o número das entradas ) correspondem a esses 4 threads.cpuNUMBER
/sys/devices/system/cpu
/proc/cpuinfo
é um dos poucos lugares onde você obtém informações sobre qual hardware implementa esses encadeamentos de execução:significa que esse
cpu0
é um dos quatro threads dentro do componente físico (processador) número 0 e está no núcleo 0 entre os 2 deste processador.fonte
Once my cpu load was 3.70, Is this maximum load? Still at that time cpu was at <50%.
,What about turbo boost ? Are all cores are turbo boosted or only physical ?
& #How to check frequency.
uptime
.por cpu eu quis dizer cpu use.i entendi o porquê. Mas como verificar a frequência ou se a CPU é turbo impulsionada?top
,uptime
). Qual unidade de hardware lida com processos é, em última análise, uma questão de software de baixo nível (compilação, sistema operacional). O relatório da cpuinfo resume o fato de que cada processador físico (um dos vários processadores em uma matriz) pode expandir seus poderes de computação por proezas técnicas, como o multithreading. Ele considerará 'qualquer coisa' que possa cuidar de um processo de cada vez como um processador. Na visão contábil da cpuinfo, os recursos do dispositivo levam à contagem total de "processadores"Apenas respondendo sua primeira pergunta. Na saída de
cat /proc/cpuinfo
você pode ver as seguintes informações: -Você pode ver a contagem de
siblings is 4
ecpu cores is 2
.cpu cores
sendo 2 é o número total de núcleos no processador que pode ser verificado a partir das especificações fornecidas na URL da intel que você forneceu. Da mesma forma,siblings
é determinado pelo número de threads que é fornecido pelo HTT da Intel.Da mesma forma, para o ID físico, o
0
que indica que existe apenas um chip do processador e para os IDs principais, você pode ver0 and 1
que são 2 núcleos no processador.Atualização: adicionando respostas às outras perguntas.
Bem, eu vou dizer, todos os núcleos ativos são turbinados. Ei amigo, você deveria ter verificado os exemplos da nossa amada Wikipedia . Explicado com cálculos também.
Turbo boost ou não, você pode os detalhes de freq na saída de
lscpu
. E para uma saída refinada: -fonte
lscpu
comando.Você pode tentar isso no terminal:
sudo lscpu
Isso lhe dará uma visão geral do seu traço físico da CPU. Quanto ao turbo boost ou não, esse é um controle puramente de hardware que o próprio sistema operacional; portanto, a menos que a Intel possua drivers específicos para Linux que possam ajustar a velocidade do processador, não há um caminho sólido para verificar o estado do turbo boost (a menos que haja um código de comando para Verifique outros fóruns se houver alguma pista sobre sua pergunta).
Quanto a mim, é isso que recebo quando digito o comando acima. Minha AMD disse que é um núcleo quádruplo, mas meu núcleo físico listado aqui é de apenas 2, com 2 threads por núcleo (soma até 4 núcleos). Estou usando o processador AMD A10 APU 5750m.
fonte
Carga do sistema e% da CPU são duas maneiras diferentes de medir como a energia da CPU é usada.
Ambas as medidas estão relacionadas, mas de nenhuma maneira idênticas.
fonte