Guide des technologies

Corriger le service .NET Runtime Optimization qui utilise trop de CPU sous Windows 10

6 min read Windows Mis à jour 18 Oct 2025
Corriger .NET Runtime Optimization — CPU élevé
Corriger .NET Runtime Optimization — CPU élevé

Interface du Gestionnaire des tâches Windows 10 montrant l'utilisation du processeur par des processus système

Fenêtre montrant l'utilisation élevée du CPU par le service d'optimisation .NET

Le service « .NET Runtime Optimization Service » (processus mscorsvw.exe) prépare et optimise les assemblies .NET pour réduire le temps de lancement des applications. Normalement, il s’exécute en arrière-plan et n’occupe que peu de CPU. Toutefois, lorsqu’il est corrompu, interrompu ou poussé à recompilation massive (par exemple après une mise à jour de .NET), il peut consommer intensivement le processeur.

Important : ce guide couvre des étapes sûres et non destructives. Si vous gérez un poste de production, testez d’abord sur une machine non critique ou sauvegardez l’état système.

Pourquoi ce service peut consommer beaucoup de CPU

  • Recompilation en masse après une mise à jour de .NET Framework ou d’applications qui règlent les assemblies.
  • Fichiers temporaires .NET corrompus.
  • Conflit ou corruption du cache d’optimisation NGen.
  • Présence d’un logiciel malveillant se faisant passer pour mscorsvw.exe.

Étapes recommandées (ordre conseillé)

1) Scanner l’ordinateur (priorité sécurité)

Exécutez une analyse complète avec votre antivirus et un anti‑malware fiable. Un fichier malveillant peut se lancer au démarrage et provoquer une activité CPU anormale quand le service .NET tente d’exécuter ou d’optimiser des composants infectés.

Conseil rapide : utilisez un second scanner (ex. : scanner en ligne ou un outil portable réputé) pour une deuxième opinion.

2) Forcer l’optimisation NGen via l’invite de commandes

Ouvrez l’invite de commandes en tant qu’administrateur : tapez cmd dans la recherche Windows, puis cliquez droit et sélectionnez “Exécuter en tant qu’administrateur”.

Si vous avez un système 32 bits, entrez :

C:\Windows\Microsoft.NET\Framework\v4.0.30319

Pour un système 64 bits, entrez :

C:\Windows\Microsoft.Net\Framework64\v4.0.30319

Ensuite, lancez la commande suivante pour forcer l’exécution de la file d’attente NGen :

ngen.exe executequeueditems

Explication : cette commande force la compilation native des assemblies en attente. Après quelques minutes, l’utilisation CPU du processus d’optimisation devrait diminuer.

Notes : laissez la fenêtre ouverte jusqu’à la fin de l’opération. Si l’ordinateur est lent, planifiez l’opération en dehors des heures de travail.

3) Redémarrer le service .NET Runtime Optimization

  1. Appuyez sur la touche Windows + R pour ouvrir Exécuter.
  2. Tapez services.msc puis appuyez sur Entrée.
  3. Recherchez le service nommé “.NET Runtime Optimization Service” (ou des entrées similaires comme “Microsoft .NET Framework NGEN v4.0.30319” suivies de “_X86” ou “_X64”).
  4. Clic droit → Redémarrer.
  5. Clic droit → Propriétés → définissez le type de démarrage sur « Automatique » ou « Automatique (Démarrage différé) » selon votre politique, puis Appliquer → OK.

Remarque : si vous ne trouvez pas clairement l’entrée, cherchez le processus mscorsvw.exe dans le Gestionnaire des tâches, puis notez le nom du service associé.

4) Exécuter le script officiel (si disponible)

Microsoft publie parfois des scripts pour résoudre des problèmes connus. Procédez ainsi :

  1. Accédez à la page GitHub officielle du script Microsoft correspondant.
  2. Cliquez droit sur le bouton « Raw » puis « Enregistrer le lien sous… » pour sauvegarder le fichier.
  3. Vérifiez que l’extension est bien un fichier script Windows (.ps1 pour PowerShell, .vbs, .cmd ou .bat selon la source).
  4. Exécutez le script avec les droits administrateur (clic droit → Exécuter en tant qu’administrateur).
  5. Choisissez “Windows Script Host” si l’exécution vous le demande.

Important : n’exécutez que des scripts provenant d’une source officielle et vérifiée. Ouvrez le fichier dans un éditeur (bloc‑notes) pour inspecter rapidement son contenu avant exécution.

Approches alternatives

  • Désinstaller puis réinstaller les versions problématiques du .NET Framework via “Programmes et fonctionnalités”.
  • Installer les dernières mises à jour Windows Update (certaines corrections sont livrées par Microsoft).
  • Créer un point de restauration avant toute modification majeure pour pouvoir revenir en arrière.

Quand ces méthodes échouent (contre‑exemples)

  • Si l’utilisation CPU reste élevée malgré toutes les tentatives, le problème peut être causé par un logiciel tiers qui déclenche sans cesse des recompilations d’assemblies.
  • Si l’analyse antivirus révèle une infection, nettoyez ou réinstallez Windows si le système est compromis.
  • Sur des machines gérées en entreprise, une stratégie de groupe ou un logiciel de gestion peut relancer automatiquement la tâche : consultez l’administrateur.

Mini‑méthodologie de diagnostic (étapes rapides)

  1. Vérifier le Gestionnaire des tâches : confirmer que mscorsvw.exe est le processus actif.
  2. Scanner le système pour malwares.
  3. Forcer ngen.exe executequeueditems en admin.
  4. Redémarrer le service .NET concerné.
  5. Surveiller pendant 24 heures et noter les patterns (au démarrage, après mises à jour, après installation d’une app).

Checklist par rôle

  • Utilisateur final : 1) Sauvegarder travaux en cours, 2) Lancer un scan antivirus, 3) Exécuter ngen, 4) Redémarrer et surveiller.
  • Administrateur système : 1) Vérifier mises à jour WSUS, 2) Examiner GPO et tâches planifiées, 3) Déployer script de réparation testée, 4) Centraliser logs.

Critères d’acceptation / Tests

  • Après actions, l’utilisation CPU par mscorsvw.exe doit redescendre sous 10 % en charge normale.
  • Les applications .NET concernées démarrent plus rapidement ou pas plus lentement qu’avant.
  • Aucune alerte antivirus liée aux fichiers .NET n’est détectée.

Glossaire (une ligne)

  • NGen : utilitaire qui précompile les assemblies .NET en code natif pour accélérer le démarrage d’applications.

Notes importantes

  • N’exécutez pas de scripts non vérifiés.
  • Sur des environnements serveur ou critiques, testez d’abord sur un poste isolé.
  • Si vous êtes dans une organisation, coordonnez‑vous avec l’équipe IT avant de modifier les services ou d’exécuter des scripts.

Conclusion

Le service .NET Runtime Optimization peut consommer beaucoup de CPU pendant des périodes d’optimisation ou en cas de corruption. Commencez par un scan antivirus, exécutez ngen pour vider la file d’attente de compilation, redémarrez le service approprié et utilisez uniquement des scripts officiels. Si le problème persiste, escaladez au support IT ou envisagez une réparation/réinstallation ciblée du .NET Framework.

Plus de sujets similaires :

  • Comment corriger Video_Dxgkrnl_Fatal_Error facilement sous Windows 10
  • Activer l’Éditeur de stratégie de groupe (gpedit.msc) sur Windows 10 Home
  • Corriger « Kmode_Exception_Not_Handled » sur Windows 10
  • Résoudre l’utilisation disque élevée due à Microsoft Compatibility Telemetry sur Windows 10
Auteur
Édition

Matériaux similaires

Équilibrer le temps d'écran des enfants
Parentalité

Équilibrer le temps d'écran des enfants

Erreur adaptateur sans fil ou point d'accès — Résolution
Dépannage réseau

Erreur adaptateur sans fil ou point d'accès — Résolution

Récupérer SMS supprimés — Android, iPhone, Windows
Mobile

Récupérer SMS supprimés — Android, iPhone, Windows

Géolocaliser des photos dans Photos (macOS)
Photographie

Géolocaliser des photos dans Photos (macOS)

Sauvegarder vos photos sans ordinateur
Photographie

Sauvegarder vos photos sans ordinateur

Meilleure application de trading d’indices
Investissement

Meilleure application de trading d’indices