Undervolter votre CPU avec XTU au démarrage de Windows

Bonjour à tous,

Ce post s’adresse à ceux qui ont installé XTU dans le but de baisser légèrement la tension de leur processeur. Le résultat escompté d’une telle opération est une baisse de la température du CPU de quelques °C avec tous les avantages que cela entraîne, tel que richesse, retour de l’être aimé, etc…

A titre d’exemple sur le i7 7700 de mon MSI GS63 j’ai atteint une différence de 10°C après undervolt en pleine session de Prime95 :

Prime 95 sans undervolt Prime 95 avec un undervolt de -180mV

Une fois que vous avez trouvé la limite de votre processeur, vous aimeriez que l’undervolt soit appliqué automatiquement, et là vous vous rendez compte que parfois XTU applique l’undervolt au démarrage, et parfois non… Vous devez donc lancez XTU ou un outil tel que Hardware Monitor pour vérifier, et appliquer l’undervolt via XTU si besoin.

Et bien non ! Grâce au nouveau chat machine à un petit script à démarrer avec votre pc ou votre session, l’undervolt sera appliqué automatiquement ! L’est pas belle la vie ?

Allez, c’est parti !

Attention ! Avant d’aller plus loin il vous faudra impérativement déterminer un undervolt stable, celui ci étant appliqué dès le démarrage !

Le script ci dessous fait les deux choses suivantes:

  • Vérifier si le service XTU est démarré, et le démarrer si ce n’est pas le cas
  • Appliquer l’undervolt voulu (et préalablement testé de manière intensive par vous même bien entendu)

Pour commencer, il faut créer le fichier .bat contenant le script. Allez dans un répertoire ou le script sera sauvegardé, et créez un fichier texte, par exemple Undervolt.txt.

Renommer le fichier Undervolt.txt en Undervolt.bat (l’extension des fichiers doit être visible, à choisir dans les options des dossiers).

Editer le fichier Undervolt.bat, et copiez les lignes suivantes:

@ECHO OFF

REM Specify name of the service and path to the XTU executable
SET SERVICENAME="XTU3SERVICE"
SET XTUPATH="C:\Program Files (x86)\Intel\Intel(R) Extreme Tuning Utility\Client\XTUCli.exe"
SET TRACE="C:\TEMP\Undervolt.log"

ECHO START UNDERVOLT --- %DATE%-%TIME% >> %TRACE%

REM Check path
IF NOT EXIST %XTUPATH% (
 ECHO #ERROR# XTU does not exist at specified path !
 ECHO #ERROR# XTU does not exist at specified path ! >> %TRACE%
 PAUSE
 GOTO END
)

REM Check if the XTU Service is running
FOR /F "tokens=3 delims=: " %%T IN ('sc query %SERVICENAME% ^| findstr "        STATE"') DO (
  IF /I "%%T" NEQ "RUNNING" (
	ECHO %SERVICENAME% is not running, start it.
    ECHO %SERVICENAME% is not running, start it. >> %TRACE%
	NET START %SERVICENAME%
	IF %errorlevel% EQU 0 GOTO UNDERVOLT
	ECHO #ERROR# Could not start the service !
    ECHO #ERROR# Could not start the service ! >> %TRACE%
	PAUSE
	GOTO END
  ) ELSE (
	ECHO %SERVICENAME% is already running.
    ECHO %SERVICENAME% is already running. >> %TRACE%
  )
)

:UNDERVOLT
REM Apply the undervolt
%XTUPATH% -t -id 34 -v -150

IF %errorlevel% EQU 0 GOTO END
ECHO #ERROR# Could not execute the undervolt command !
ECHO #ERROR# Could not execute the undervolt command ! >> %TRACE%
PAUSE

:END

Il faudra ensuite vérifier que le chemin d’installation de XTU spécifié dans le script correspond bien, et l’adapter si nécéssaire en modifiant la ligne

SET XTUPATH="C:\Program Files (x86)\Intel\Intel(R) Extreme Tuning Utility\Client\XTUCli.exe"

De même, spécifiez un chemin valide pour le fichier log, ou les messages seront sauvegardées

SET TRACE="C:\TEMP\Undervolt.log"

Si vous ne souhaitez pas conserver de traces, vous pouvez également supprimer cette ligne et toutes les lignes faisant référence à ce fichier, comme par exemple la ligne:

ECHO #ERROR# Could not execute the undervolt command ! >> %TRACE%

Dernière étape, et non des moindres, il faut spécifier l’undervolt en millivolts sur la ligne suivante. Dans l’exemple ci dessous un undervolt de -150 mV sera appliqué.

%XTUPATH% -t -id 34 -v -150

Une fois ces étapes réalisées, le script est prêt, maintenant il faut le lancer au démarrage. Il existe plusieurs solutions pour lancer une application au démarrage du pc, via le menu démarrage, la base de registre, etc… malheureusement il nous faut des droits d’administrateur, et à ma connaissance il n’y a que le planificateur de tâches qui permet cela (du moins sans avoir une fenêtre UAC à valider).

Pour cela rendez vous dans le planificateur de tâches et créez une nouvelle tâche avec les options suivantes:

  • Dans l’onglet Général cochez la case Exécuter avec les autorisations maximales
  • Dans l’onglet Déclencheurs choisissez l’action qui déclenchera le script (par exemple l’ouverture de la session)
  • Dans l’onglet Actions ajoutez une nouvelle action de type Demarrer un programme et donnez le chemin vers le script. Précisez également le chemin vers le répertoire du script dans le champ Commencez dans
6 J'aimes

:+1:

Je vais tester. Il y a thread à ce sujet sur NBR pour les anglophones.
Merci du partage en tout cas

Super. Merci @Patou

Merci ça va faciliter les choses au démarrage

Je veux pas faire la fine bouche mais c’est pas mieux d’utiliser le truc qui sert à ça aka “le planificateur de tâches” ?
M’voyez :nerd_face:

Merci pour le tut

@Yoy0 Çà irait pour appliquer l’undervolt, par contre pour vérifier si le service tourne c’est une autre histoire :sweat_smile:

Si quelque chose vous semble incomplet, n’hésitez pas à m’en faire part !

1 J'aime

La flemme de boot windows pour tester mais de mémoire ça gère les conditions et les évènements genre “ne pas exécuter si le programme machin est actif” et “exécuter lorsque la source d’alimentation change”

Coucou, je vous soumets un UV pour mon AV. En fait ma question est simplement de savoir si à partir de la ligne 35 je peux passer tous les paramètres de cette manière ou pas :

@ECHO OFF

REM Specify name of the service and path to the XTU executable
SET SERVICENAME=“XTU3SERVICE”
SET XTUPATH=“C:\Program Files (x86)\Intel\Intel® Extreme Tuning Utility\Client\XtuCLI.exe”
SET TRACE=“C:\TEMP\Undervolt.log”

ECHO START UNDERVOLT — %DATE%-%TIME% >> %TRACE%

REM Check path
IF NOT EXIST %XTUPATH% (
ECHO #ERROR# XTU does not exist at specified path !
ECHO #ERROR# XTU does not exist at specified path ! >> %TRACE%
PAUSE
GOTO END
)

REM Check if the XTU Service is running
FOR /F “tokens=3 delims=: " %%T IN ('sc query %SERVICENAME% ^| findstr " STATE”’) DO (
IF /I “%%T” NEQ “RUNNING” (
ECHO %SERVICENAME% is not running, start it.
ECHO %SERVICENAME% is not running, start it. >> %TRACE%
NET START %SERVICENAME%
IF %errorlevel% EQU 0 GOTO UNDERVOLT
ECHO #ERROR# Could not start the service !
ECHO #ERROR# Could not start the service ! >> %TRACE%
PAUSE
GOTO END
) ELSE (
ECHO %SERVICENAME% is already running.
ECHO %SERVICENAME% is already running. >> %TRACE%
)
)

:UNDERVOLT
REM Apply the undervolt
%XTUPATH% -t -id 34 -v -125
%XTUPATH% -t -id 47 -v 80
%XTUPATH% -t -id 48 -v 80
%XTUPATH% -t -id 29 -v 39
%XTUPATH% -t -id 30 -v 39
%XTUPATH% -t -id 31 -v 39
%XTUPATH% -t -id 32 -v 39
%XTUPATH% -t -id 76 -v 36
%XTUPATH% -t -id 102 -v 120

IF %errorlevel% EQU 0 GOTO END
ECHO #ERROR# Could not execute the undervolt command !
ECHO #ERROR# Could not execute the undervolt command ! >> %TRACE%
PAUSE

:END

id34 : c’est l’UV à -125mv
47 / 48 ce sont les PL1 & 2 que je monte à 80W
29 / 30 / 31 / 32 / les cores que je monte à 3,9ghz
76 c’est le cache que je fixe à 3,6ghz
et 102 c’est l’amperage

ça ne va pas tenter de lancer plusieurs instances d’XTU si tu fais ça ? Sinon tu testes et tu vois ce que ça donne ^^

Salut Sarou.

C’est exactement comme ça que j’aurais fait.

Je ne penses pas que ça lance d’autres instances, XTU étant démarré en tant que service, l’utilitaire en ligne de commande doit juste relayer les ordres à exécuter.

Le plus simple est de lancer ton script puis d’ouvrir XTU afin de vérifier que toutes les valeurs sont celles attendues.

Au prochain boot je teste.

Possibilité de tuner ses profil avec throttle stop en lieu et place d’XTU.
Une possibilité intéressante est de switcher automatiquement vers un profil de “sûreté” en cas de surchauffe

Bonjour, si je voudrais en plus de l’undervolt changer le Turbo Boost Power Max automatiquement quel serait le script (ou la modification du script)?

%XTUPATH% -t -id 47 -v 80
%XTUPATH% -t -id 48 -v 80

Merci Leeloyd :slight_smile:

Pour plus de détails, il suffit de taper %XTUPATH% -i tuning pour voir la liste des options, dans laquelle on retrouvera justement les deux options suivantes :
47 Turbo Boost Short Power Max
48 Turbo Boost Power Max

Il suffira d’ajouter d’autres lignes dans le script, comme l’a fait Sarou quelques posts au dessus. En gros tu peux copier les deux lignes données par Leeloyd et les ajouter à ton script, en ajustant les 80W à tes besoins.

Ok donc je fait juste ajouter ces lignes au Script plus haut n’importe où? Je suis vraiment débutant avec les scripts

Salut,

Tu les rajoutes dans le script juste en dessous de la ligne suivante :
%XTUPATH% -t -id 34 -v -[ta valeur d’undervolt]