Accéder au contenu principal

Consommation mémoire des bureaux sous GNU/Linux

La question quasi classique : "Combien de mémoire est nécessaire utiliser pour tel bureaux sous GNU/Linux ?" On peut vouloir utiliser une machine plus ou moins ancienne, donc dotée d'une quantité limité de mémoire vive. Se pose alors la question de l'environnement de bureau approprié à la machine. .... En dehors de toute considération de goût.

Je me suis amusé à étudier la question dans la limite de mes moyens.

Comme je ne dispose pas de 36000 machines, j'ai profité des capacités de virtualisation de ma tour (construite justement pour virtualiser). J'ai ainsi construit plusieurs machines virtuelles avec, systématiquement, les mêmes profils. Toutes ces machines virtuelles sont en 64 bits avec :
* 4 Go de mémoire vive
* 128 Mo de mémoire vidéo
* SDA1 : Ext4 : 17 Go :  /
* SDA2 : Swap : 4 Go
* SDB1 : Ext4 : 8 Go : /home

Les environnements de bureaux étudiés sont les plus classiques. Par ordre alphabétique :
* Cinnamon : un fork de Gnome-shell initié par l'équipe LinuxMint dont il existe une version dégradée nommée Cinnamon 2D employée si les ressources sont insuffisantes
* Enlightenment : un bureau relativement peu connu mais très joli et fonctionnel, au développement assez lent
* Fluxbox : un bureau minimal, voire austère, et pourtant fonctionnel
* Gnome-shell : l'évolution de Gnome 2, assez connu, qui fonctionne par le biais d'extensions
* IceWM : un bureau assez léger et agréable
* KDE (4) : bureau très connu, complet
* LXDE : autre bureau léger et agréable
* Mate : un fork de Gnome 2 et qui ressemble assez à son aîné, complet et fonctionnel
* OpenBox : autre bureau minimaliste, voire austère mais fonctionnel
* Razor : autre bureau léger et agréable
* Trinity (TDE) : un fork de KDE3 qui garde la même apparence, étudié surtout par curiosité car peu employé
* Unity : le bureau par défaut d'Ubuntu, un fork de Gnome-shell
* WindowMaker : encore un bureau minimaliste et austère
* Xfce : un bureau léger, complet et fonctionnel

Au départ, j'ai virtualisé sous VirtualBox. Je me suis heurté à l'impossibilité d'évaluer correctement Cinnamon car je "tombais" systématiquement en mode dégradé, Cinnamon 2D, quelles que soient les distributions. J'ai donc virtualisé également sous VMWare Player afin de vérifier si le problème se reproduisait et il s'est reproduit. Je ne suis donc pas en mesure d'évaluer les différences en terme de consommation mémoire entre Cinnamon en version "débridée" et Cinnamon en mode dégradé. J'ai cependant profité de la situation pour noter également les résultats sous VMWare.

Un mot sur VMWare : J'ai récupéré tant que possible mes machines virtuelles en les exportant depuis VirtualBox (désinstallation des additions VBox préalables). Si cette méthode ne fonctionnait pas (car elle ne fonctionne pas systématiquement), j'ai copié tous mes disques virtuels VBox un par un vers le format VMWare, soit VMDK, afin de pouvoir ensuite recréer mes machines virtuelles sous VMWare.

Dans tous les cas, j'ai créé une seule machine virtuelle par distribution, sous VirtualBox et sous VMWare. Dans chacune de ses machines, en 64 bit (pour rappel), ont été installé tous les environnements de bureau requis (et non une machine par distribution et bureau). Les distributions de bases sont :
* Debian Sid : incontournable
* Fedora 20 : incontournable
* Mageia 4 : parce que c'est ma distribution principale
* Manjaro :  parce que basée sur Arch Linux et aussi en "rolling release"
* Ubuntu 14.04 et ses dérivées  : incontournable (au moins pour Unity)
* LinuxMint 16 : incontournable pour Mate et, surtout, Cinnamon

A noter que Trinty a été évalué uniquement sous Fedora.

La mémoire consommée a été évalué via la commande free -m, en console, dès le démarrage du système. Chaque environnement de bureau est dans son état minimal : pas de fioritures, aucune application annexe polluante. Bref, un environnement brut de décoffrage, tel qu'installé en minimal par la distribution.

De plus, la machine virtuelle a été systématiquement redémarré pour évaluer l'environnement de bureau suivant, afin d'éviter toute pollution de processus résiduel.

Voici le tableau des relevés de consommation :
Consommation des environnements de bureaux GNU/Linux
Relevés des consommations par bureau selon les distributions GNU/Linux
Rappels :
* Toutes les distributions virtualisées (sans exception) sont en 64 bits avec 4 Go de mémoire RAM et 128 Mo de mémoire vidéo.
* Toutes les machines virtuelles (VirtualBox comme VMware Player) sont strictement identiques.
* Les Virtualbox Additions et VMware Tools (selon le cas) ont été préalablement installé avant toute prise de mesure.
* Le système virtuel a été systématiquement redémarré avant de prendre toute nouvelle mesure de consommation mémoire.
* Toutes les valeurs relevées ont été systématiquement confirmé 2 à 3 fois et les nouvelles mesures ont toujours été très sensiblement identiques (c'est-à-dire que les différences étaient absolument insignifiantes car trop minimes). 

En résumé :
* On relève une consommation légèrement supérieure sous VMware, de façon générale (ce qui doit être propre à VMWare).
* Je rappelle que je n'ai pas évalué en situation réelle, sans virtualisation. Ce qui serait aussi intéressant.
* En règle générale, c'est Gnome-shell qui est le plus gourmand.
* En règle générale, c'est WindowMaker qui est le moins gourmand.

Si on devait tenter, je dis bien "tenter", d'établir un classement par ordre croissant, du moins gourmand vers le plus vorace, cela donnerais, selon les moyennes de VirtualBox :
1) FluxBox (133.50 Mo)
2) Windowmaker (146.00 Mo)
3) IceWM (157.75 Mo)
4) OpenBox (160.25 Mo)
5) Enlightenment (168.25 Mo)
6) LXDE (203.00 Mo)
7) Mate (258.00 Mo)
8) Xfce (273.60 Mo)
9) Razor (346.75 Mo)
10) Unity (371.00 Mo)
11) Cinnamon 2D (375.50 Mo)
12) KDE (471.00 Mo)
13) Gnome-shell (502.80 Mo)
14) Gnome classic (503.66 Mo)

En utilisant les moyennes de VMWare, peu de changements :
1) FluxBox (165.00 Mo)
2) Windowmaker (176.00 Mo)
3) Enlightenment  (201.25 Mo)
4) OpenBox (202.50 Mo)
5) IceWM (214.00 Mo)
6) LXDE (249.80 Mo)
7) Mate (309.40 Mo)
8) Xfce (337.80 Mo)
9) Razor (380.75 Mo)
10) Unity (470.00 Mo)
11) Cinnamon 2D (489.75 Mo)
12) Gnome classic (521.66 Mo)
13) KDE (547.00 Mo)
14) Gnome-shell (577.60 Mo)

On peut à peu près établir la liste suivante :
1) FluxBox
2) WindowMaker
3) Enlightenment, IceWM et OpenBox plus ou moins difficiles à départager ainsi
4) LXDE
5) Mate
6) Xfce
7) Razor
8) Unity
9) Cinnamon 2D
10) KDE, Gnome-shel et Gnome classic difficiles aussi à départager

Pour autant, la consommation n'est qu'une partie du problème. Tout dépend de ce que l'utilisateur recherche :
* une interface épurée au maximum (FluxBox, WindowMaker, OpenBox),
* une interface plus élaborée mais relativement simple (Enlightenment, IceWM, LXDE, Razor),
* une interface complète et intégrée (KDE, Gnome classic avec ses variantes qui sont Gnome-shell, Mate, Cinnamon, Unity, sans oublier Xfce).

A vous de voir. Le mieux reste de tester par soi même ;-)

Posts les plus consultés de ce blog

VirtualBox et USB

Je me suis longtemps battu pour que mes machines virtuelles Windows sous VirtualBox bénéficient d'un support correctement exploitable de l'USB. Bien que je faisais tout ce qu'il fallait faire, impossible de brancher le moindre périphérique USB sur une machine VirtualBox ayant Windows (toutes versions confondues). Je m'étais même tourné vers VMware Player pour avoir une machine virtuelle Windows pleinement exploitable pour mes (rares) besoins Windows de travail !

Bizarrement, ces difficultés n'existent pas avec une quelconque distribution GNU/Linux virtualisée (sauf cas technique bien spécifique à la distribution).

Notez que tous mes essais partent depuis une distribution GNU/Linux (Debian 8 Jessie, Mageia 5, Fedora 25, Manjaro). Pour l'anecdote, naviguant plus ou moins entre ces distributions, j'utilisais la version officielle de VirtualBox sous Mageia tandis que c'était la version fournie par le gestionnaire de paquet pour les autres. Il est donc possi…

WPS Office - WPS Office contre LibreOffice

En mettant en place toute la logithèque nécessaire sur un PC portable neuf, j'ai découvert la suite WPS Office préinstallée. En fait, j'ai découvert que cette suite était aussi disponible pour PC, dont Windows ET GNU/Linux, puisqu'elle est déjà disponible gratuitement pour Android et iOS. Cette suite propose un tableur (Spreadsheets), un traitement de texte (Writer) et une application de présentation (Presentation). L'interface se rapproche beaucoup (voire totalement) de l'interface actuelle de Microsoft Office (exit les menus pour faire place à des onglets thématiques). Voir les liens en bas.

Cette suite est proposé par la société chinoise Beijing Kingsoft Office Software Co sous licence propriétaire.

Les formats proposés sont les formats Microsoft Office et l'export en PDF mais aucunement les formats LibreOffice OpenDocument (ODF).

J'ai poussé la curiosité à la tester brièvement dans deux machines virtuelles, une sous Windows 10 et l'autre sous Mageia 5…

La méteo dans un terminal

Si vous voulez la météo, il existe des tas d'applications graphiques, des extensions dédiées pour divers systèmes d'exploitations et pour divers environnements de bureaux. sans oublier les multiples sites internet.
1 - La météo dans la console Il est également possible d'avoir la météo dans une console. Oui, j'oubliais ! L'astuce est plutôt pour les utilisateur GNU/Linux, BSD, Mac. Brefs, les systèmes d'exploitations qui offrent un terminal. ... On me dit dans l'oreillette que Windows 10 a désormais un "vrai" terminal sauce Linux. Je ne le connais pas, donc m'abstiens. Par contre, pour Windows, vous aurez en fin d'article la variante pour vous ;-)

Revenons à notre terminal. Pas besoin des droits root.

Pour la météo de Toulouse :
$ curl wttr.in/Toulouse
Pour la météo de Brest
$ curl wttr.in/Brest
Cas particulier pour les noms composés :
$ curl wttr.in/Le+Havre
Vous pouvez aussi saisir les coordonnées GPS. Si vous ne les avez pas, vous pouvez l…