J'ai une petite question qui me turlupine... Soit un serveur
tournant sous debian (amd64) avec un noyau 2.4.14.2 (officiel).
Remarquez, j'obtiens les mêmes résultats avec les autres noyaux.
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
10900 jcollab 17 0 5032m 2.1g 15m S 0.0 55.0 61:15.23 java
3957 jcollab 16 0 1852m 237m 14m S 0.0 6.0 0:34.16 java
3612 mysql 16 0 164m 54m 4920 S 0.0 1.4 544:15.97 mysqld
18603 www-data 16 0 76760 16m 4124 S 0.0 0.4 0:01.78 apache2
18742 www-data 16 0 76644 16m 4076 S 0.0 0.4 0:01.45 apache2
18741 www-data 16 0 76464 16m 4084 S 0.0 0.4 0:01.68 apache2
18602 www-data 16 0 76452 16m 4032 S 0.0 0.4 0:01.37 apache2
18601 www-data 16 0 76368 15m 4080 S 0.0 0.4 0:01.67 apache2
24554 www-data 16 0 76364 15m 4048 S 0.0 0.4 0:01.22 apache2
...
Le processus jcollab apparaissant en premier consomme plus de 5Go
(c'est un serveur d'application écrit en java). J'aimerais savoir
pourquoi la mémoire totale occupée par le système est inférieure à
4Go. Cela ne me semble pas cohérent, mais j'ai peut-être raté un
truc. Une idée ? La question est essentielle pour moi parce que
j'ai un problème d'utilisation mémoire dans ce logiciel et je ne
sais pas par quel bout attaquer...
Merci d'avance,
JKB
--
Pour contacter l'équipe de modération : moderateurs-fcolm@efrei.fr
ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans
la liste de distribution des modérateurs.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Vincent Bernat
OoO En cette matinée pluvieuse du vendredi 27 janvier 2006, vers 10:54, JKB disait:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 10900 jcollab 17 0 5032m 2.1g 15m S 0.0 55.0 61:15.23 java 3957 jcollab 16 0 1852m 237m 14m S 0.0 6.0 0:34.16 java 3612 mysql 16 0 164m 54m 4920 S 0.0 1.4 544:15.97 mysqld 18603 www-data 16 0 76760 16m 4124 S 0.0 0.4 0:01.78 apache2 18742 www-data 16 0 76644 16m 4076 S 0.0 0.4 0:01.45 apache2 18741 www-data 16 0 76464 16m 4084 S 0.0 0.4 0:01.68 apache2 18602 www-data 16 0 76452 16m 4032 S 0.0 0.4 0:01.37 apache2 18601 www-data 16 0 76368 15m 4080 S 0.0 0.4 0:01.67 apache2 24554 www-data 16 0 76364 15m 4048 S 0.0 0.4 0:01.22 apache2 ...
Le processus jcollab apparaissant en premier consomme plus de 5Go (c'est un serveur d'application écrit en java). J'aimerais savoir pourquoi la mémoire totale occupée par le système est inférieure à 4Go. Cela ne me semble pas cohérent, mais j'ai peut-être raté un truc. Une idée ? La question est essentielle pour moi parce que j'ai un problème d'utilisation mémoire dans ce logiciel et je ne sais pas par quel bout attaquer...
Les 5 Go sont dans la colonne VIRT. Cela signifie que ce n'est pas nécessairement de la mémoire physique qui est utilisée. Notamment, cela peut contenir des fichiers ouverts avec mmap() : ils sont rattachés à l'espace mémoire de l'application, mais ils n'occupent pas de mémoire physique.
man top(1) t'en dira plus. -- I WILL NOT XEROX MY BUTT I WILL NOT XEROX MY BUTT I WILL NOT XEROX MY BUTT -+- Bart Simpson on chalkboard in episode 7F01
-- Pour contacter l'équipe de modération : ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans la liste de distribution des modérateurs.
OoO En cette matinée pluvieuse du vendredi 27 janvier 2006, vers
10:54, JKB <knatschke@koenigsberg.fr> disait:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
10900 jcollab 17 0 5032m 2.1g 15m S 0.0 55.0 61:15.23 java
3957 jcollab 16 0 1852m 237m 14m S 0.0 6.0 0:34.16 java
3612 mysql 16 0 164m 54m 4920 S 0.0 1.4 544:15.97 mysqld
18603 www-data 16 0 76760 16m 4124 S 0.0 0.4 0:01.78 apache2
18742 www-data 16 0 76644 16m 4076 S 0.0 0.4 0:01.45 apache2
18741 www-data 16 0 76464 16m 4084 S 0.0 0.4 0:01.68 apache2
18602 www-data 16 0 76452 16m 4032 S 0.0 0.4 0:01.37 apache2
18601 www-data 16 0 76368 15m 4080 S 0.0 0.4 0:01.67 apache2
24554 www-data 16 0 76364 15m 4048 S 0.0 0.4 0:01.22 apache2
...
Le processus jcollab apparaissant en premier consomme plus de 5Go
(c'est un serveur d'application écrit en java). J'aimerais savoir
pourquoi la mémoire totale occupée par le système est inférieure à
4Go. Cela ne me semble pas cohérent, mais j'ai peut-être raté un
truc. Une idée ? La question est essentielle pour moi parce que
j'ai un problème d'utilisation mémoire dans ce logiciel et je ne
sais pas par quel bout attaquer...
Les 5 Go sont dans la colonne VIRT. Cela signifie que ce n'est pas
nécessairement de la mémoire physique qui est utilisée. Notamment,
cela peut contenir des fichiers ouverts avec mmap() : ils sont
rattachés à l'espace mémoire de l'application, mais ils n'occupent pas
de mémoire physique.
man top(1) t'en dira plus.
--
I WILL NOT XEROX MY BUTT
I WILL NOT XEROX MY BUTT
I WILL NOT XEROX MY BUTT
-+- Bart Simpson on chalkboard in episode 7F01
--
Pour contacter l'équipe de modération : moderateurs-fcolm@efrei.fr
ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans
la liste de distribution des modérateurs.
OoO En cette matinée pluvieuse du vendredi 27 janvier 2006, vers 10:54, JKB disait:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 10900 jcollab 17 0 5032m 2.1g 15m S 0.0 55.0 61:15.23 java 3957 jcollab 16 0 1852m 237m 14m S 0.0 6.0 0:34.16 java 3612 mysql 16 0 164m 54m 4920 S 0.0 1.4 544:15.97 mysqld 18603 www-data 16 0 76760 16m 4124 S 0.0 0.4 0:01.78 apache2 18742 www-data 16 0 76644 16m 4076 S 0.0 0.4 0:01.45 apache2 18741 www-data 16 0 76464 16m 4084 S 0.0 0.4 0:01.68 apache2 18602 www-data 16 0 76452 16m 4032 S 0.0 0.4 0:01.37 apache2 18601 www-data 16 0 76368 15m 4080 S 0.0 0.4 0:01.67 apache2 24554 www-data 16 0 76364 15m 4048 S 0.0 0.4 0:01.22 apache2 ...
Le processus jcollab apparaissant en premier consomme plus de 5Go (c'est un serveur d'application écrit en java). J'aimerais savoir pourquoi la mémoire totale occupée par le système est inférieure à 4Go. Cela ne me semble pas cohérent, mais j'ai peut-être raté un truc. Une idée ? La question est essentielle pour moi parce que j'ai un problème d'utilisation mémoire dans ce logiciel et je ne sais pas par quel bout attaquer...
Les 5 Go sont dans la colonne VIRT. Cela signifie que ce n'est pas nécessairement de la mémoire physique qui est utilisée. Notamment, cela peut contenir des fichiers ouverts avec mmap() : ils sont rattachés à l'espace mémoire de l'application, mais ils n'occupent pas de mémoire physique.
man top(1) t'en dira plus. -- I WILL NOT XEROX MY BUTT I WILL NOT XEROX MY BUTT I WILL NOT XEROX MY BUTT -+- Bart Simpson on chalkboard in episode 7F01
-- Pour contacter l'équipe de modération : ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans la liste de distribution des modérateurs.
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 10900 jcollab 17 0 5032m 2.1g 15m S 0.0 55.0 61:15.23 java 3957 jcollab 16 0 1852m 237m 14m S 0.0 6.0 0:34.16 java
Le processus jcollab apparaissant en premier consomme plus de 5Go (c'est un serveur d'application écrit en java). J'aimerais savoir pourquoi la mémoire totale occupée par le système est inférieure à 4Go.
man top devrait t'éclairer un peu, et pour plus de détails, je cite la partie pertinente de <http://forums.gentoo.org/viewtopic.php?p10748> (un article assez classique rédigé au départ en Anglais mais j'ai préféré la VF pour te faire plaisir ;-)
,---- | VIRT représente la taille virtuelle d'un processus, c'est-à-dire la | somme de la mémoire qu'il utilise réellement, la mémoire qu'il | a référencée pour lui (par exemple, la RAM de la carte video pour le | serveur X), les fichiers sur disque qu'il référence pour son usage | (surtout des bibliothèques partagées) ainsi que la mémoire partagée avec | d'autres processus. VIRT représente la quantité de mémoire à laquelle le | programme est capable d'accéder à l'instant présent. | | RES représente la taille résidente, qui est une représentation précise | de la quantité réelle de mémoire physique consommée par un processus. | (Cela correspond aussi directement à la colonne %MEM). D'un point de vue | virtuel, ce chiffre sera toujours inférieur à la taille VIRT étant donné | que la plupart des programmes dépendent de la bibliothèque C. | | SHR indique quelle quantité de la taille VIRT est réellement partagée | (mémoire ou bibliothèques). Dans le cas des bibliothèques, cela ne | signifie pas nécessairement que la totalité de la bibliothèque est | résidente. Par exemple, si un programmpe n'utilise qu'un petit nombre de | fonctions d'une bibliothèque, la totalité de la bibliothèque sera | référencée et prise en compte dans VIRT et SHR mais seules les portions | de la bibliothèque contenant les fonctions utilisées seront réellement | chargées et comptées dans RES. `----
Pour vraiment approfondir, il te faudra te tourner vers des livres orientés noyau Linux, malheureusement les plus à jour n'existent qu'en Anglais pour le moment.
-- DW
-- Pour contacter l'équipe de modération : ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans la liste de distribution des modérateurs.
* JKB <knatschke@koenigsberg.fr> in fr.comp.os.linux.moderated:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
10900 jcollab 17 0 5032m 2.1g 15m S 0.0 55.0 61:15.23 java
3957 jcollab 16 0 1852m 237m 14m S 0.0 6.0 0:34.16 java
Le processus jcollab apparaissant en premier consomme plus de 5Go
(c'est un serveur d'application écrit en java). J'aimerais savoir
pourquoi la mémoire totale occupée par le système est inférieure à
4Go.
man top devrait t'éclairer un peu, et pour plus de détails, je cite la
partie pertinente de <http://forums.gentoo.org/viewtopic.php?p10748>
(un article assez classique rédigé au départ en Anglais mais j'ai
préféré la VF pour te faire plaisir ;-)
,----
| VIRT représente la taille virtuelle d'un processus, c'est-à-dire la
| somme de la mémoire qu'il utilise réellement, la mémoire qu'il
| a référencée pour lui (par exemple, la RAM de la carte video pour le
| serveur X), les fichiers sur disque qu'il référence pour son usage
| (surtout des bibliothèques partagées) ainsi que la mémoire partagée avec
| d'autres processus. VIRT représente la quantité de mémoire à laquelle le
| programme est capable d'accéder à l'instant présent.
|
| RES représente la taille résidente, qui est une représentation précise
| de la quantité réelle de mémoire physique consommée par un processus.
| (Cela correspond aussi directement à la colonne %MEM). D'un point de vue
| virtuel, ce chiffre sera toujours inférieur à la taille VIRT étant donné
| que la plupart des programmes dépendent de la bibliothèque C.
|
| SHR indique quelle quantité de la taille VIRT est réellement partagée
| (mémoire ou bibliothèques). Dans le cas des bibliothèques, cela ne
| signifie pas nécessairement que la totalité de la bibliothèque est
| résidente. Par exemple, si un programmpe n'utilise qu'un petit nombre de
| fonctions d'une bibliothèque, la totalité de la bibliothèque sera
| référencée et prise en compte dans VIRT et SHR mais seules les portions
| de la bibliothèque contenant les fonctions utilisées seront réellement
| chargées et comptées dans RES.
`----
Pour vraiment approfondir, il te faudra te tourner vers des livres
orientés noyau Linux, malheureusement les plus à jour n'existent qu'en
Anglais pour le moment.
--
DW
--
Pour contacter l'équipe de modération : moderateurs-fcolm@efrei.fr
ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans
la liste de distribution des modérateurs.
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 10900 jcollab 17 0 5032m 2.1g 15m S 0.0 55.0 61:15.23 java 3957 jcollab 16 0 1852m 237m 14m S 0.0 6.0 0:34.16 java
Le processus jcollab apparaissant en premier consomme plus de 5Go (c'est un serveur d'application écrit en java). J'aimerais savoir pourquoi la mémoire totale occupée par le système est inférieure à 4Go.
man top devrait t'éclairer un peu, et pour plus de détails, je cite la partie pertinente de <http://forums.gentoo.org/viewtopic.php?p10748> (un article assez classique rédigé au départ en Anglais mais j'ai préféré la VF pour te faire plaisir ;-)
,---- | VIRT représente la taille virtuelle d'un processus, c'est-à-dire la | somme de la mémoire qu'il utilise réellement, la mémoire qu'il | a référencée pour lui (par exemple, la RAM de la carte video pour le | serveur X), les fichiers sur disque qu'il référence pour son usage | (surtout des bibliothèques partagées) ainsi que la mémoire partagée avec | d'autres processus. VIRT représente la quantité de mémoire à laquelle le | programme est capable d'accéder à l'instant présent. | | RES représente la taille résidente, qui est une représentation précise | de la quantité réelle de mémoire physique consommée par un processus. | (Cela correspond aussi directement à la colonne %MEM). D'un point de vue | virtuel, ce chiffre sera toujours inférieur à la taille VIRT étant donné | que la plupart des programmes dépendent de la bibliothèque C. | | SHR indique quelle quantité de la taille VIRT est réellement partagée | (mémoire ou bibliothèques). Dans le cas des bibliothèques, cela ne | signifie pas nécessairement que la totalité de la bibliothèque est | résidente. Par exemple, si un programmpe n'utilise qu'un petit nombre de | fonctions d'une bibliothèque, la totalité de la bibliothèque sera | référencée et prise en compte dans VIRT et SHR mais seules les portions | de la bibliothèque contenant les fonctions utilisées seront réellement | chargées et comptées dans RES. `----
Pour vraiment approfondir, il te faudra te tourner vers des livres orientés noyau Linux, malheureusement les plus à jour n'existent qu'en Anglais pour le moment.
-- DW
-- Pour contacter l'équipe de modération : ATTENTION: Postez DIRECTEMENT vos articles dans le groupe, PAS dans la liste de distribution des modérateurs.