La forte consommation de RAM par Windows peut être agaçante, surtout lorsque votre ordinateur commence à ralentir alors que plusieurs programmes sont exécutés simultanément. Cependant, ce problème peut ne pas être uniquement dû à Windows lui-même, mais aussi aux applications et services en arrière-plan qui consomment inutilement de la RAM.
Il existe des applications et des outils électroniques permettant de surveiller l'utilisation de la mémoire vive et d'identifier les programmes qui en consomment le plus. Certains offrent même des fonctionnalités de gestion des processus et services en arrière-plan. Ces outils facilitent l'identification des sources de consommation de mémoire vive, évitant ainsi de fermer des programmes au hasard ou de désactiver des services système essentiels.
Cependant, réduire l'utilisation de la mémoire ne signifie pas arrêter un maximum de processus. La RAM est là pour être utilisée, et une utilisation accrue est normale lorsque de nombreuses applications sont en cours d'exécution. Le véritable objectif est d'identifier les programmes inutiles et de réduire leur charge sans affecter la stabilité de Windows ni les performances des applications essentielles.
On reproche souvent à Windows sa forte consommation de RAM, et c'est parfois vrai. Cependant, si votre Gestionnaire des tâches déborde d'applications comme Slack, Discord et VS Code qui fonctionnent simultanément, sachez que le système d'exploitation n'est pas le véritable coupable. Ce sont des applications Electron, et chacune d'elles charge un moteur de navigateur complet en mémoire sans le savoir, simplement pour ouvrir une fenêtre de chat ou un éditeur de code, consommant ainsi une part importante de votre RAM.
Les applications Electron consomment une énorme quantité de mémoire.
L'exécution même d'un petit nombre de ces applications consomme de la RAM.
Electron fonctionne en combinant deux programmes généralement sans lien l'un avec l'autre : le moteur de rendu Chromium de Google et Node.js. Cette combinaison permet aux développeurs de créer des applications de bureau à l'aide de JavaScript HTML et CSS sont des technologies familières à la plupart des développeurs.
Mieux encore, vous pouvez utiliser ces programmes sans avoir à écrire de code distinct pour chaque système d'exploitation. Dans toute application Electron, au moins deux processus distincts sont toujours exécutés. Le processus principal a un accès complet au système de fichiers, au matériel et au système d'exploitation de l'ordinateur. Il existe ensuite un ou plusieurs processus de rendu, qui sont des pages web chargées d'afficher l'interface que vous voyez.
Pour des raisons de sécurité, ces processus de rendu sont isolés du reste du système et communiquent donc avec le processus principal via une couche de communication plutôt que directement avec le système. L'exécution simultanée de Node.js et Chromium sur la même machine nécessite des processus d'arrière-plan complexes afin d'éviter les interférences entre leurs différents systèmes d'événements.
Le principal inconvénient réside dans la taille excessive de la bibliothèque Electron. Les applications natives, intégrées au système d'exploitation, peuvent partager des bibliothèques préchargées en mémoire par d'autres applications et par le système d'exploitation lui-même. Les applications Electron, quant à elles, ne le peuvent pas. Chaque application possède sa propre version indépendante du navigateur web, et aucune ne partage de ressources.
Ainsi, lorsque vous ouvrez une application Electron, vous exécutez en réalité une multitude de processus. Un processus gère l'application elle-même, un autre chaque fenêtre, un troisième le traitement graphique, et de nombreux autres processus sont dédiés au réseau, à l'audio et au stockage. Si vous exécutez Slack, Discord et VS Code simultanément, votre ordinateur devra maintenir en mémoire, simultanément, trois instances distinctes du même moteur de navigateur, trois environnements d'exécution JavaScript distincts et trois ensembles de threads distincts.
À mesure que tous ces processus s'accumulent, ils consomment rapidement votre mémoire vive disponible.
Electron diffère des applications Windows classiques.
Votre ordinateur subira des ralentissements lorsque sa mémoire RAM sera pleine.
Il existe d'autres raisons expliquant la forte consommation de mémoire d'Electron, et pas seulement les frameworks natifs de Windows. Win32 est une option plus ancienne et plus légère, où les applications sont directement traduites en langage machine et communiquent avec le système d'exploitation via des bibliothèques système telles que user32.dll et kernel32.dll.
Il n'y a ni environnement d'exécution géré, ni ramasse-miettes, ni aucun autre composant intermédiaire ; le système se compose uniquement de l'application et du système d'exploitation. Cette simplicité permet de limiter la consommation de mémoire en veille. Windows Presentation Foundation ajoute une couche supplémentaire en s'exécutant sur un environnement d'exécution .NET, sans pour autant ralentir le système.
WPF évite également d'allouer la totalité de la mémoire aux propriétés qui conservent leurs valeurs par défaut et met en cache les arbres de rendu afin d'éviter les recalculs constants. Il en va de même pour WinUI 3.
Electron, en revanche, est un cas complètement différent. Une application Electron classique consomme beaucoup plus de mémoire en mode veille, et si elle n'est pas optimisée, des problèmes peuvent survenir. Contrairement à la plupart des autres programmes, ce logiciel n'est pas conçu pour une utilisation en veille.
La situation s'aggrave considérablement lorsque plusieurs de ces applications fonctionnent simultanément. Sur un ordinateur portable doté de 8 Go de RAM, cette consommation s'accumule très rapidement. Une fois la mémoire vive (RAM) disponible saturée, Windows commence à déplacer les pages mémoire des applications en arrière-plan vers le fichier d'échange du disque afin de libérer de l'espace pour l'application active.
C’est là que réside le problème : lorsque vous revenez à une application en arrière-plan, Windows doit récupérer toutes ces pages du disque vers la RAM avant de pouvoir fonctionner. Ce processus de lecture est à l’origine des saccades, des ralentissements et des blocages temporaires qui surviennent fréquemment lors du passage d’une application Electron à une autre sur un système fortement sollicité.
Le ramasse-miettes du moteur V8 aggrave ce problème. Il analyse périodiquement la mémoire pour nettoyer les objets à court et à long terme, et cette analyse oblige le système d'exploitation à restaurer les pages écrasées à partir du disque.
Vous pouvez réduire la consommation de mémoire vive (RAM) d'Electron.
Il existe des options plus légères auxquelles vous pouvez vous adresser.
Les développeurs conçoivent le logiciel, mais vous conservez des options en tant qu'utilisateur. Les applications Electron répondant aux commandes standard en ligne de commande, vous pouvez les exécuter depuis un terminal ou personnaliser leurs raccourcis sur le bureau pour accéder à des options spécifiques.
Lorsque modifier les options ne suffit pas, opter pour un logiciel plus léger peut faire toute la différence. Avec des applications comme Slack ou Discord, le plus simple est de les utiliser dans un onglet de navigateur plutôt que dans une application de bureau. Ces plateformes fonctionnent parfaitement avec les WebSockets ; les ouvrir dans un onglet existant vous évite donc de charger une nouvelle version complète de Chromium et Node.js juste pour lancer une fenêtre de chat.
Si vous recherchez une application de bureau adaptée, il est judicieux d'envisager celles développées avec Tauri plutôt qu'Electron. Tauri exploite les vues web déjà présentes sur votre système, ce qui réduit la taille de l'installation et minimise la consommation de mémoire de l'application.
Pas d'inquiétude. Cela ne signifie pas que les applications Electron sont mal conçues ni que les développeurs ont fait de mauvais choix. Les compromis qui rendent le développement d'applications multiplateformes plus rapide et moins coûteux sont bien réels et avantageux pour de nombreuses équipes. Ce coût se traduit par une amélioration des performances du système. Les options mentionnées ici ne nécessitent aucune connaissance technique et le simple fait de remplacer une application Electron par un onglet de navigateur ou une alternative basée sur Tauri peut libérer suffisamment de mémoire pour améliorer significativement la réactivité du reste du système.
Optimiser l'utilisation de la mémoire sous Windows ne nécessite pas de désactiver tous les services ni de fermer les processus en arrière-plan. L'astuce consiste à identifier les applications qui consomment de la RAM sans avantage apparent, puis à les gérer judicieusement à l'aide d'outils de surveillance et de gestion fiables.
Si votre appareil est souvent lent, commencez par surveiller son utilisation de la mémoire avant d'effectuer toute modification. Vous pourriez découvrir qu'une application ou un groupe de programmes exécutés automatiquement est la véritable cause du ralentissement.





