A frequência do clock da CPU varia sob demanda?

10

Na minha máquina (não em um computador pessoal), tenho 4 núcleos (2,4 GHz) e atualmente não tenho nenhum processo importante em execução. No momento, todos os meus 4 núcleos estão funcionando / vibrando a 2,4 GHz ou alguns deles estão mais lentos ou imóveis?

Remi.b
fonte
Sua pergunta não está clara. Você não possui 24 processadores.
Ramhound 28/08/15
1
Então você não pode editar a pergunta dele para esclarecer? Você sabe o que ele quer dizer.
Matt Clark
2.4Ghz não significa que você tem 24 núcleos. Não há como isso possa ser ou jamais seria.
JakeGould # 25/16

Respostas:

14

sim

Seu processador possui um clock base ou velocidade de barramento frontal , meu i7 é ~ 100MHz, existe um multiplicador que pode ser alterado com base na demanda do processador - esse processador de 2.6GHz pode ter um multiplicador de clock de até 36 para fornecer me uma velocidade máxima de clock de ~ 3.6GHz.

Como na maioria das vezes sua máquina está ociosa, esse multiplicador fica em torno de 8x, o que significa que minha máquina está funcionando apenas a 800 MHz, podendo mudar várias vezes por segundo.

Não sei qual processador você tem, por isso não posso lhe dizer o que o seu está fazendo, mas a maioria dos processadores modernos faz isso, incluindo o seu telefone celular, é chamado speed stepping e é o que o seu sistema faz para economizar energia.

Você pode conferir a CPU-Z pelo CPUID para visualizar os detalhes do seu sistema (windows).

Ou, se você estiver executando o linux em um sistema que possui um /procsistema, poderá executar cat /proc/cpuinfopara visualizar os detalhes sobre o seu processador. Nesta impressão, e na página da CPU da CPU-Z, é possível visualizar a velocidade máxima, a velocidade atual, o multiplicador e o multiplicador máximo.

Observe que esse multiplicador se aplica a todos os seus núcleos; portanto, se seu sistema tiver 8 núcleos - todos eles estarão funcionando na mesma frequência.

Aqui está o meu sistema ocioso , observe que ele está rodando a cerca de 800 MHz com um multiplicador de 8, o mínimo para este processador.

carga mínima

Aqui está o meu sistema com carga moderada , rodando a 3,4 GHz com um multiplicador de 34. (observe que a tensão do núcleo também aumenta)

carga moderada

A velocidade do barramento de 100 MHz será gerada por um PLL na placa-mãe - este é o relógio principal que é enviado para o outro componente lógico da placa-mãe, ou seja, pci, ram, controlador usb, etc ... Este é o sinal que é passado para a CPU física através do soquete.

A velocidade do núcleo, ~ 3,4 GHz, é gerada por um segundo PLL na própria CPU, usando o FSB como fonte.

Overclock

Quando as pessoas fazem overclock em suas máquinas, isso geralmente aumenta a velocidade do FSB - o que apenas faz tudo correr mais rápido; o problema de tudo correr mais rápido é que ele consome mais energia - geralmente exigindo uma leve sobrecarga.

Onde as pessoas começam a ter problemas é que, quando funcionando com potência máxima, primeiro o silício fica extremamente quente e, segundo, as tensões mais altas e depois classificadas começam a saturar os transistores próximos, a meros mícrons de distância do silício - potencialmente danificando o próprio silício, e interferindo com outras partes da CPU.

HLT

Depois de responder a essa pergunta, eu próprio perguntei se havia alguma técnica adicional de economia de energia, para a qual a resposta era a HLTinstrução ;

Depois que a CPU terminar de processar sua carga de trabalho, ela executará uma parada, essencialmente desativando o núcleo até que a próxima interrupção seja acionada. Nesse estado, o relógio ainda está funcionando no FSBxMlt., Mas o núcleo da CPU não está funcionando e não está consumindo energia.

Você pode ver o HTLprocesso de instruções no Windows Task Manager, o nome é System Idle Process ; todo o tempo de CPU não utilizado será gasto na execução HLT.processo ocioso do sistema

Matt Clark
fonte
Obrigado +1 Eu tenho um Intel Xeon de 6 núcleos (no Mac), mas não há necessidade de resolver isso na sua resposta.
Remi.b 28/08/2015
Observe que um sistema realmente ocioso desliga completamente o relógio da CPU. (estados de sono, C2 e superior). As CPUs modernas também desligam seus caches se ficarem ociosas por tempo suficiente (C3). O que você está descrevendo aqui estão os estados de energia utilizadas, enquanto em C0 (não dormindo)
MSalters
1
Não tenho tanta certeza sobre todos os núcleos rodando na mesma velocidade. Eu tenho visto frequentemente /proc/cpuinfoindicar que os núcleos estavam rodando em velocidades diferentes.
kasperd
Oh? Você tem algum link que mostre isso em ação? Acho que nunca vi núcleos diferentes operando em velocidades diferentes, exceto na big.LITTLEarquitetura de alguns processadores ARM que raramente são usados ​​em computadores pessoais.
Matt Clark