Abilitare selettivamente Intel turbo boost?


2

Sui laptop, la tecnologia "Turbo-Boost" di Intel può provocare temperature della CPU indesiderabilmente elevate e rumori della ventola associati e, a seconda del modello, anche un lamento udibile a bobina non costante durante l'utilizzo di frequenze di clock massime. In particolare, la riduzione del peso tende a provocare picchi di frequenza di clock frequenti, con gli ad-blocker che alleviano ma non rimuovono i sintomi. Il webbrowing in particolare provoca picchi di temperatura della CPU indesiderati, anche se non richiede davvero tutte queste prestazioni.

L'impostazione della velocità massima della CPU al 99% nelle impostazioni avanzate del piano di risparmio energia di Windows consente di disabilitare Turboboost in modo efficace per evitare questo problema.

Purtroppo è una soluzione slitta-da-crack-a-noce. Le emissioni ridotte sono rilevanti per i programmi in esecuzione continua (Webbrowser, Office, ...), ma l'impatto significativo sulla velocità di elaborazione è indesiderabile per alcuni compiti di breve durata (compilazione, analisi dei dati, ...), in cui io come utente controllare quando e per quanto tempo stanno funzionando - e spesso incorrere in un tempo di attesa mentre lo fanno.

È in qualche modo possibile trovare una via di mezzo, in cui ai programmi è vietato utilizzare TurboBoost per impostazione predefinita, ma agli eseguibili è possibile selezionare selettivamente l'accesso a tutte le prestazioni della CPU?


1
Sembra qualcosa che sarebbe un "bello da avere" ma implicherebbe molto lavoro extra sull'implementazione e richiederebbe molta interazione da parte dell'utente per configurare e utilizzare in modo efficace. L'unico vero mercato è per le persone in cui i laptop che hanno acquistato sono marginali per i compiti e hanno un design termico scadente, poche altre persone probabilmente noteranno o si preoccuperanno abbastanza da dedicare tempo a configurare questa "caratteristica" ...
Mokubai

Risposte:


0

È probabilmente impossibile abilitare Turboboost in modo selettivo, come ho fatto nella domanda. Tuttavia, come "la prossima cosa migliore", può essere sufficiente utilizzare un wrapper che modifica i powerplan prima e dopo l'esecuzione di un comando di breve durata. L'ho pubblicato come https://github.com/kbauer/with-high-performance

Al momento della scrittura della sceneggiatura ha questa forma:

:: -- with-high-performance.cmd
@echo off
if "%~1"=="" (
   echo.
   echo    Usage: %0 COMMAND ...
   echo.
   echo    Execute COMMAND with HighPerformance powerplan.
   echo    Once COMMAND is finished, switch back to Balanced.
   echo.
   echo    For the time being, doesn't support detecting if another
   echo    process is being executed in this panner.
   echo.
   echo    If you need other power plans than the "balanced"
   echo    and "high performance" plans, change the UIDs in the 
   echo    script to a value as obtained by running
   echo.
   echo    ^ ^ ^ ^ POWERCFG /LIST
   echo.
   exit /b 1
)

setlocal
set high=8c5e7fda-e8bf-4a96-9a85-a6e23a8c635c
set balanced=381b4222-f694-41f0-9685-ff5bb260df2e
echo %0^> %* >&2
call powercfg.exe -setactive %high%
call %*
set command_errorlevel=%errorlevel%
call powercfg.exe -setactive %balanced%
endlocal
exit /b %command_errorlevel%

Si noti tuttavia che, mentre lo script cambia correttamente i powerplan, finora non ho visto alcun aumento di velocità quando si utilizza pdflatex / latexmk.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.