Recuperer l'occupation mémoire du processus (linux) en c++

Bonjour,

j’ai besoin de récupérer l’occupation mémoire (mémoire virtuelle) du processus appelant afin de tracer à quel moment se produisent les grosses consommations de mémoire (problème de consommation mémoire excessive).

L’idée étant de faire le différentiel avant-après action afin de connaitre l’impact de la dernière action.

L’objectif est de fournir un outil permettant aux développeurs de localiser et tracer les grosses consommations et ainsi pouvoir corriger si possible.

Je précise qu’il s’agit d’un gros projet et le problème ne se résume pas à de simple oublie de delete…

Si vous connaissez des outils ou un moyen de récupérer dans ce programme c++ l’occupation mémoire actuelle je suis preneur.

J’ai beaucoup cherché et j’ai uniquement trouvé des commandes shell du type top, free, etc…

Peut être ces fonctions peuvent elles être utilisées par un moyen ou un autre ? je ne sais pas.

Je cale :confused:

merci :S

Tu as valgrind pour ce genre de truc : ça va te fournir (de mémoire, car moi et le C, ça date) où ça a été alloué, où ça a été libéré, et surtout où ça n’a jamais été libéré.

Ensuite, savoir si ça fait un rapport par fonction, j’ai des doutes.

Merci, j’étais justement en train d’étudier le fonctionnement de valgrind ^^ Comme quoi ! ^^

j?espère qu’il donnera la visibilité suffisante. Je tiens au courant

Valgrind me noie dans un flot d’information. A ce que j’ai lu il est adapté pour des petits projets. Mais dès qu’il s’agit d’un projet d’envergure il est très peu exploitable :confused: