|
Publicité ' | |||||||||||||||||||||||
|
|
#1 | ||
|
Membre du Club
![]() Inscription : janvier 2008 Messages : 50 ![]() |
Bonjour,
Serait-il possible d'avoir l'interprétation de la sortie standard de la commande free suivante ? Code :
Version de Linux : # uname -a Linux 2.6.9-67.ELsmp #1 SMP Wed Nov 7 13:56:44 EST 2007 x86_64 x86_64 x86_64 GNU/Linux Merci d'avance ! |
||
|
|
10
|
|
|
#2 |
|
Membre du Club
![]() Inscription : janvier 2008 Messages : 50 ![]() |
Bien-sûr j'ai ma propre idée :
Le nombre en gras indique qu'environ 6.6 Go de mémoire sont utilisés par les tampons du kernel (cache filesystem) et donc qu'il est tout à fait possible d'allouer 3 Go de plus à une application sans que le système commence à swapper. mais j'aimerai avoir la confirmation d'experts. |
|
|
10
|
|
|
#3 |
|
Expert Confirmé Sénior
![]() francois Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 3 534 ![]() |
c'est pas si simple que ça mais presque oui ...
en clair 8G déjà alloué y'en a 6 en buffer/cache.. et ça sera libéré selon les besoin des applications à part égale avec du swapping lorsque 100% de la mémoire sera alloué ou sur le point de l'être... mais ça ne veut pas dire que le swaping soit anormal au taux d'occupation actuelle car le swap a plusieurs fonctions... Par contre 8Go de swap c'est pas un peu trop ? je croyait que 4Go de swap était le maximum utilisable avec la configuration par défaut du noyau linux même en 64 bits ? ou me trompe je ? |
|
|
00
|
|
|
#4 |
|
Membre du Club
![]() Inscription : janvier 2008 Messages : 50 ![]() |
J'ai enfin eu la réponse à ma question.
En fait, sous Linux, lorsqu'un process alloue de la shared memory (et l'utilise !), celle-ci est allouée dans la zone Cached (ipcs -m pour le détail de ce qui est alloué mais pas forcément utilisé). Shared vaut 0 pour des raisons de compatibilités. Linux, via le paramètre /proc/sys/vm/pagecache généralement à 100 (%), tente de ne pas laisser de mémoire physique non utilisée (ou alors un minimum). Du coup on voit tout ce qui n'est pas utilisé y compris la shared memory (utilisée) passer dans la zone Cached (cache FS, cache .so etc...) Et donc free -m ne retourne quasiment pas de mémoire libre ce qui donne l'impression que le serveur est trop chargé (en applications...). Donc savoir si un serveur peut encore supporter de nouvelles applications est un peu tricky sous Linux. En tout cas merci frp31.
|
|
|
10
|
|
|
#5 |
|
Expert Confirmé Sénior
![]() francois Ingénieur systèmes et réseaux Inscription : juillet 2006 Messages : 3 534 ![]() |
tout à fait.
Et tu peux aussi te fier au 'load' de la machine pour savoir si tu peux continuer à la charger ou pas avec une régle simple pour tout x86 mono-processeur (quelque soit le nombre de core) : load moyen : -load <=1 quasi tout le temps c'est que la machine est un poil trop performante pour son usage -load <= 2 quasi tout le temps c'est parfait -load <= 2.5 quasi permanent c'est bof et pour la gestion des pics : -load <=5 en pointe (quelques minutes) c'est pas la peine de s' inquiéter si le load moyen est bon -load >=6 plus de quelques minutes n'est pas acceptable sauf si la machine a un load moyen <= 1.5.... en lisant les informations de load et de mémoire, on peut se fier à ça pour mesurer plus ou moins si on exploite bien la machine. un exemple : une machine bi processeurs (physiques) memoire alloués 90% swap alloué 10% load moyen 1.25 elle subit un load de 10 pendant 20 minutes et ça retombe à un niveau normal comportement à avoir : aucune inquiétude. une machine bi processeurs (physiques) memoire alloués 90% swap alloué 25% load moyen 3.25 elle subit un load de 12 pendant 30 minutes comportement à avoir : mètre la machine sous surveillance |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com