Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
zram [Le 19/10/2013, 11:41]
82.242.9.138
zram [Le 07/06/2025, 15:13] (Version actuelle)
krodelabestiole détails / réorganisation (pas de diff sur les anciennes versions d'ubuntu les paquets sont les mêmes au moins depuis jammy)
Ligne 1: Ligne 1:
 {{tag>​swap optimisation}} {{tag>​swap optimisation}}
- 
----- 
  
 ====== zRam ====== ====== zRam ======
  
-**zRam** (ou RamZ) remplace ​[[compcache]].\\ +**[[wpfr>​ZRam]]** est un module du [[:​kernel|noyau Linux]] qui permet de compresser la mémoire vive, ce qui peut être utile dans le cas où cette ressource ​est limitée et arrive souvent à saturation. 
-zRam est une technologie ingénieuse. En temps normalun ordinateur arrivant à manquer de mémoire vive inscrit directement le contenu ​de la mémoire vive sur le disque dur pour libérer ​le l'​espace. Cette technique est appelée ​**[[SWAP]]** \\ + 
-Autrefois cette techniquemalgré tous ces défauts, restait raisonnable. Malheureusement ​plus le temps avanceplus les disques dur deviennent lents en comparaison à la mémoire vive. Ainsi le simple ​fait de décharger ​"un peu" de mémoire vive sur le disque dur peut ralentir ​drastiquement, ​voir freezer votre PC\\ +En communication étroite avec le processeurla [[wpfr>mémoire vive]], ou RAM, permet au processeur ​de lire et écrire des données très rapidement, afin d'​effectuer les opérations les plus courantes et d'​assurer ​la bonne réactivité générale du système. 
-zRam permet de remédier à ça en compressant la ram la moins utilisée pour faire de la place. ​La RAM la moins utilisée reste donc en RAM mais compressée permettant de faire de la place pour d'autres informations. \\ + 
-La RAM une fois compressée ​est certes un tout petit peu plus lentemais ne requiert ​pas l’inscription ​de ces données sur le disque dur. Car ouiun disque dur est immensément plus lent qu'​une ​simple compression, ​et l'impact sur le processeur reste très négligeableDans tous les cas vous sortirez gagnant ! (même sur un vieux pentium 3, le processeur ne sera jamais ​le facteur limitantsurtout si le disque dur date de la même époque que votre processeur, le boost de performance sera immense) ​\\ +Plus on ouvre d'​applications différentes,​ ou d'​onglets dans un navigateur, plus grande est la quantité de mémoire vive utilisée (et arithmétiquement plus faible est la quantité de mémoire disponible). Lorsqu'​elle arrive à saturation l'​ordinateur transfère les données qu'il suppose être les moins usitées dans un fichier d'​échange sauvegardé ​sur le stockage non volatile du système, //a priori// le [[:SSD]] (ou le [[:disque dur]] dans le pire des cas).\\ 
-zRam n'empêche pas l'utilisation de l'hibernation.+Cette technique est appelée ​//[[:swap]]//. Plutôt qu'un fichieril est aussi possible de définir une [[:​partitions|partition]] réservée à cet usage (c'​était d'​ailleurs la seule solution sur les anciennes versions d'​Ubuntu). 
 + 
 +Malheureusement, ​même les [[:SSD]] les plus rapides sont loin de rivaliser avec la mémoire vive en terme de vitesse, et le fait de décharger ​certaines données présentes en mémoire vive sur ce support permanent beaucoup plus lent ralentit ​drastiquement ​le fonctionnement de l'​ordinateur. La réactivité générale du système s'en trouve grandement affectéeet dans certains cas celui-ci cesse de fonctionner momentanément ou exige un redémarrage forcé
 + 
 +**zRam** permet de repousser cette échéance ​en compressant la RAM la moins utilisée pour faire de la place. ​Les données les moins sollicitées dans la RAM sont compressées afin d'offrir davantage de ressources aux nouveaux processus.\\ 
 +Cependant lorsqu'​elles sont compressées,​ l'​accès aux informations stockées en RAM se trouve systématiquement ralenti et le processeur ​est plus sollicitéla compression et décompression des données constituant systématiquement une charge de travail supplémentaire. 
 + 
 +**zRam** est donc utile uniquement dans le cas où la mémoire vive disponible ​ne suffit ​pas à l'usage qu'on fait de son ordinateuret qu'il n'est pas possible d'​étendre ses capacités en ajoutant ou remplaçant ​une barrette de RAM sur la carte mère. Si il n'est pas nécessaire il ne fera que réduire la réactivité du système (en augmentant généralement aussi la consommation électrique ​et la température du CPU). 
 + 
 +Linux conçoit ​l'espace géré par **zRam** comme un espace de [[:swap]]Mais contrairement au [[:swap]] ordinaire celui-ci peut lui-même être stocké en RAMce qui garantit ses performances (bien que l'​espace de RAM disponible traditionnellement s'en trouve réduit d'​autant). **zRam** peut aussi gérer cet espace sur le support de stockage comme le [[:swap]] traditionnelcependant son intérêt est dans ce cas très limité étant donné la fiabilité et le prix raisonnable des [[:​SSD]] ​de nos jours. 
 + 
 +===== Installation ===== 
 + 
 +**zRam** est déjà installé sur votre ordinateurcar il est un module du [[:​kernel|noyau Linux]], mais il n'est pas activé par défaut. 
 + 
 +Pour l'​utiliser ​le plus simple est d'​[[:​tutoriel:​comment_installer_un_paquet|installer le paquet]] ''​[[apt>​zram-config]]''​ qui fournit une configuration par défaut et un service [[:​systemd]].\\ 
 +Grâce au service ''​zram-config'',​ **zRam** s'exécute automatiquement une fois le paquet correspondant installé. 
 + 
 +Si besoin le paquet ​''​[[apt>​zram-tools]]''​ fournit des services et outils supplémentaires pour le gérer. 
 + 
 +Pour vérifier l'​activation du service **zRam** : 
 +<​code>​systemctl status zram-config</​code>​ 
 +ou encore : 
 +<​code>​cat /​proc/​swaps</​code>​ 
 +Exemple d'​affichage (pour 4 cores) : 
 +<file - /​proc/​swaps>​ 
 +Filename Type Size Used Priority 
 +/​dev/​sda3 ​                              ​partition 9215996 0 -1 
 +/​dev/​zram0 ​                             partition 755740 8104 5 
 +/​dev/​zram1 ​                             partition 755740 8004 5 
 +/​dev/​zram2 ​                             partition 755740 8120 5 
 +/​dev/​zram3 ​                             partition 755740 8064 5 
 +</​file>​ 
 +<note tip>Si la vérification ci-dessus ne donne pas de résultat équivalent,​ faites <​code>​sudo systemctl restart zram-config</​code></​note>​
  
-===== Activer zRam =====+===== Configuration ​=====
  
-zRam est déjà installé ​sur votre ordinateur ​car il fait partie du noyau linux officiel à partir de 2.6.37 (Ubuntu 11.04) \\ +Il n'y a rien en principe rien à faire, **zRam** détecte automatiquement la mémoire vive disponible ​sur votre ordinateur, ainsi que le nombre ​de cœurs et la configuration par défaut convient dans la plupart des cas.
-À partir d'​ubuntu 12.04un paquet est présent des les dépôts pour activer automatiquement ce module et ainsi profiter ​de ces bienfaits. \\ +
-Il vous suffit donc de l'​installer.+
  
-Pour cela, ouvrez un [[terminal]] et faites+Pour modifier la configuration par défaut ​: 
-<​code>​ +<note warning>​FIXME Cette commande ne peut pas fonctionner,​ zramswap n'​existe plus.</​note>​ 
-sudo apt-get install zram-config +<​code>​echo "​ENABLED=true 
-</​code>​+ALGO=zstd 
 +PERCENT=50 
 +PRIORITY=100"​ | sudo tee -a /​etc/​default/​zramswap</​code>​ 
 +<​code>​sudo systemctl restart zramswap</​code>​
  
-Ou tout simplement utilisez votre procédure préférée pour [[:​tutoriel:​comment_installer_un_paquet|installer un paquet sous Ubuntu]], et utilisez la pour installer le paquet **zram-config**+==== Ajout ====
  
-Et voilà ! Même pas besoin de redémarrer ou de configurer quoi que se soit. Le paquet a autodétecté la mémoire vive disponible sur votre ordinateur, ainsi que le nombre de cœurs et a optimisé et démarré le service zRam pour vous !+<​code>​sudo zramctl --find --size 1024M</​code>​
  
-===== Désactiver zRam =====+<​code>​sudo mkswap /​dev/​zram1</​code>​ 
 +<​code>​sudo swapon /​dev/​zram1</​code>​
  
-Si au démarrage de l'​ordinateur vous obtenez un message du type « Buffer I/O error on device zram0 », vous êtes victimes de ce [[https://​bugs.launchpad.net/​ubuntu/​+source/​linux-lts-raring/​+bug/​1217189|bug]].+==== Arrêt ====
  
-Pour remédier à ce problème, nous allons black-listé ce module pour qu'il ne soit plus chargé au démarrage de la machine :​ +<​code>​sudo ​swapoff ​/dev/​zram*</​code>​ 
-  * [[:​tutoriel:​comment_modifier_un_fichier|Créez un fichier]] /​etc/​modprobe.d/​blacklist-zram.conf en tant qu'​[[superutilisateur|Administrateur]] +<​code>​sudo zramctl ​--reset /dev/zram*</​code>​
-<​code>​sudo ​gedit /etc/modprobe.d/​blacklist-zram.conf</​code>​ +
-  ​Ajoutez la ligne suivante dans ce fichier +
-<​code>​blacklist zram</​code>​ +
-  * Enregistrez,​ fermez votre éditeur de texte +
-  * Mettez à jour la liste des [[tutoriel:​tout_savoir_sur_les_modules_linux|modules]] chargés au démarrage avec la commande suivante +
-<​code>​update-initramfs ​-c -k all</​code>​+
  
-===== Voir aussi: ===== 
-  * [[http://​www.webupd8.org/​2011/​10/​increased-performance-in-linux-with.html]] 
-  * installer par default dans la version 78 de CUBUNTU ​ : [[http://​www.cubuntu.fr/?​q=node/​21]] 
  • zram.1382175681.txt.gz
  • Dernière modification: Le 19/10/2013, 11:41
  • par 82.242.9.138