Enquanto lêA resposta de Dennis, isso me faz pensar sobre o que determina a temperatura da CPU. A seguir está o meu entendimento.
A temperatura da CPU é determinada exclusivamente pelo uso da CPU em uma unidade de tempo.
O uso da CPU em uma unidade de tempo é igual à porcentagem de uso da CPU vezes a frequência da CPU.
Assim, à medida que a porcentagem de uso da CPU ou a frequência da CPU diminui, o uso da CPU em uma unidade de tempo diminui e a temperatura da CPU diminui.
A seguir está uma citação de parteA resposta de Dennis, com o qual meu entendimento acima não concorda:
Maior uso significa temperatura mais alta. Menor uso significa temperatura mais baixa.
O underclock da frequência da CPU com cpufreq afetará apenas a porcentagem de uso da CPU sem diminuir a temperatura.
A porcentagem é um valor absolutamente sem sentido. Com exatamente a mesma carga de trabalho, sua porcentagem pode aumentar ou diminuir ao fazer overclock ou underclock em sua CPU. Mas ainda é a mesma carga de trabalho, portanto, qualquer dano potencial (e não tenho certeza se existe algum) causado pelo uso será exatamente o mesmo.
Da mesma forma, cpulimit limita o uso da CPU, mantendo assim a porcentagem e a temperatura baixas.
Você pode me dizer qual está correto, Dennis ou eu? Por que?
Obrigado!
Responder1
A temperatura da CPU é determinada exclusivamente pelo uso da CPU em uma unidade de tempo. [...] Assim, à medida que a porcentagem de uso da CPU ou a frequência da CPU diminui, o uso da CPU em uma unidade de tempo diminui e a temperatura da CPU diminui.
O consumo de energia (ou seja, o calor gerado) não éunicamentedeterminado pela utilização da CPU, embora isso também dependa de quais instruções a CPU está executando. Em um circuito CMOS digital e síncrono (como o seu processador), o consumo de energiapode ser calculado como:
P = C x V^2 x f
Onde C
está a capacitância do circuito digital (muda com base nas instruções que estão sendo executadas), V
está a tensão da CPU e f
é a frequência do clock. Algumas instruções desenhammais poder do que outros, então assumiremos que está corrigido aqui (ou seja, executando os mesmos programas quealgunstrabalho apreciável que não seja ocioso). Como efeito colateral disso, a temperatura da CPUvaidiminuir em modo inativo (apenas NOP
s), mesmo na mesma frequência de clock.
Observe, entretanto, que a energia consumida pela CPU ainda está diretamente relacionada à frequência e à tensão. Reduzir a frequência pela metade reduzirá o consumo de energia para 50%, enquanto reduzir a tensão pela metade reduzirá o consumo de energia para 25% de seu valor original. Isto tem umenormeefeito na geração de calor, mesmo se quisermos realizar a mesma quantidade de trabalho (lembre-se de que potência é trabalho por unidade de tempo; veja abaixo).
Maior uso significa temperatura mais alta. Menor uso significa temperatura mais baixa.
Sim isso é verdade. Quando seu computador está ocioso, muitas vezes ele não faz "nada" (ou seja, NOP
instruções, está em um estado de baixo consumo de energia ou simplesmente não executa instruções que consomem muita energia). Quando está fazendo algo, como renderizar gráficos, ele usa muito maiscomponentes da CPU(como ALU, FPU, MIU), gerando mais calor.
O underclock da frequência da CPU com cpufreq afetará apenas a porcentagem de uso da CPU sem diminuir a temperatura.
Não, isso é falso. Veja a equação acima. O underclocking fará com que os programas sejam executados em um intervalo de tempo mais longo, mas a energia consumida pelo circuitovaidiminuir. O consumo de energia do CMOS está diretamente relacionado ao número de comutadores lógicos por unidade de tempo.
Isto é muito intuitivo dada a definição depoder, o que é simplesmentetrabalho por unidade de tempo, ou a taxa na qual realizamos trabalho/cálculos. Se executarmos o mesmo programa até a conclusão em uma determinada frequência f
e depois compararmos a execução dele na frequência f/2
, no último caso, embora tenhamos tomadoduas vezes mais tempopara executar o programa, fizemos omesma quantidade detrabalhar- e assim, a energia consumida pela CPU durante este tempo serámetade.
A CPU irá, portanto, operar em uma temperatura mais baixa, embora demore mais para realizar a mesma quantidade de trabalho, pois agora tem mais tempo para dissipar o calor na CPU. O underclocking também permite operar a CPU com uma tensão mais baixa (undervolting), diminuindo ainda mais o consumo de energia sem afetar o trabalho.
Responder2
Depende do seu processador, mas limitar o máximo da CPU pode diminuir definitivamente a quantidade de calor gerada. Primeiro, tenha em mente que o calor é ditado pela tensão do Vcore e não pela frequência. Portanto, se você puder limitar seu processador a um estado P inferior, isso também limitará a tensão do vcore. Tenha em mente que isso ocorre apenas em processadores Intel mais recentes (presumo que a AMD seja algo semelhante), então acho que é daí que vem a confusão. Fiz alguns testes para comprovar minha teoria.
- Primeiro, deixei meu I7 3930k @ 4.2Ghz executar uma passagem de linpack e tirei uma captura de tela do vcore e das temperaturas:
Como você pode ver depois de uma passagem do linpack meu pacote de CPU está em 55C
Agora limitei a 75% e executei outra passagem do linpack:
Observe as diferenças no vcore em 4,2 Ghz vs 2,4 Ghz, 1,280 e 0,984. Em termos de Vcore, essa é uma diferença ENORME. Observe como o calor gerado reflete isso: 55C vs 40C.
Portanto, há alguma verdade em limitar a frequência, diminuindo o calor gerado. Embora uma CPU de 3,8 GHz com 1,28 Vcore e uma CPU de 4,2 Ghz com 1,28 Vcore gerem a mesma quantidade de calor, isso só é relevante para CPUs com undervolt e downclock.
Responder3
O que Dennis disse é que diminuir o clock da frequência da CPU com cpufreq afetará apenas a porcentagem. Significa que a carga de trabalho é a mesma, mas o percentual será baixo (praticamente alto). À medida que a carga de trabalho for maior, a temperatura da CPU será maior.