Est-ce important si la quantité d'une zone de swap sous Linux a été définie trop petite (disons 1 Go), et la RAM principale l'est 128Gb
?
Devrions-nous toujours définir la quantité de zone de swap à deux fois la quantité de RAM?
MIS À JOUR:
Bonjour, merci à tous d'avoir répondu à cette question. En fait, j'ai cette question parce que nous avons rencontré des problèmes lors de l'utilisation d'un petit système de cluster. Les problèmes sont affichés ici . L'image suivante contient des informations sur certains ordinateurs de ce petit cluster.
La MEMTOT
est la quantité totale de RAM de cette machine, la SWAPTO
est la quantité totale de la zone SW AP de cette machine, et SWAPUS
est la quantité utilisée de la zone de SWAP. Comme le montre l'image, l'utilisation de SWAP est en effet faible.
Lorsque vous essayez de résoudre ces problèmes publiés dans Ici , nous ne savons pas si la quantité de zone SWAP est définie trop petite, ce qui est juste 1Gb
relatif 128Gb
, comme indiqué dans l'image. Ainsi, j'ai cette question. Je suis désolé de ne pas avoir publié l'intégralité des informations de base dans la version originale de cet article. Avant cela, nous pensions également que si la quantité de RAM était grande, nous pourrions définir une petite quantité de SWAP. Nous avons essayé de définir le SWAP c0148
sur 16Gb
, le problème ne semble pas être (peut-être devrions-nous tirer cette conclusion après avoir observé leur statut pendant longtemps).
Nous ne sommes pas des professionnels du système Linux, et nous n'avons pas pu expliquer pourquoi cela s'est produit. Il est probable qu'il s'agisse d'un système de cluster, et le SGE gère les ressources de chaque machine, et il doit avoir une quantité relativement importante de SWAP car cette machine peut être utilisée par de nombreux travaux soumis par de nombreux utilisateurs.
En outre, si nous réglons simplement la quantité de SWAP sur une valeur trop élevée, les autres problèmes que cela entraînerait méritent également d'être pris en considération.
la source
Réponses:
Le noyau Linux a un paramètre pour contrôler la fréquence à laquelle le swap est utilisé, appelé
swappiness
, décrit sur /unix/88693/why-is-swappiness-set-to-60-by-default .Un swappiness de zéro signifie que le swap ne sera utilisé que si le système manque de mémoire. Un swappiness de 100 force les programmes à utiliser le swap instantanément.
Ajustez votre système comme vous le souhaitez, mais avoir 128 Go de RAM est très peu probable que votre système manque de mémoire facilement, donc avoir 2/4 Go de swap pourrait être suffisant. Il n'est pas conseillé, mais possible, d'exécuter un système sans partition de swap.
Je pense que la règle de la zone d'échange de deux fois la quantité de RAM est obsolète et n'est utile que sur les systèmes d'environ 1 Go de RAM et toujours à la limite de l'utilisation complète de la RAM.
la source
swappiness
de 0 semble logique avec une grande quantité de RAM, il peut être préférable de la conserver comme valeur par défaut60
: http://unix.stackexchange.com/a/88820/50687 .Je crois que la règle empirique 2x est obsolète. Nos stations de travail ont 16 Go de RAM, nous n'en utilisons généralement qu'environ 25% et à peine plus de 50%. Donc, pour nos besoins, nous n'utilisons aucun échange.
Étant donné que vous devez décider de la quantité de swap à créer et qu'il est théorique que le nombre que vous choisissez ne soit pas suffisant à un moment donné, alors pourquoi ne pas choisir 0? Ou - pourquoi ne pas simplement installer plus de RAM?
Je crois que c'est une décision très personnelle basée sur la façon dont votre ordinateur sera utilisé et la quantité de RAM dont il dispose.
la source
À moins que vous ne fassiez des calculs gourmands en mémoire, vous n'avez pas besoin du tout de swap (mais il vaut mieux avoir une petite partition de swap). Mais avoir swap> ram est nécessaire lorsque vous allez utiliser la suspension sur le disque.
la source