Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
faq:memoire [2015/04/27 07:05] – [Connaître la mémoire utilisée à l'instant t au cours de l’exécution] cicaluga | faq:memoire [2018/01/24 10:30] (Version actuelle) – [Avoir une évolution (une courbe) au cours du temps] ltaulell | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ===== Connaître le pic mémoire d'un programme ===== | ||
- | |||
- | |||
- | Pour connaître le pic mémoire du programme on peut utiliser la commande " | ||
- | |||
- | <code bash> | ||
- | |||
- | / | ||
- | |||
- | </ | ||
- | |||
- | en regardant le champ " | ||
- | |||
- | Par exemple, pour mon_programme : | ||
- | |||
- | <code bash> | ||
- | |||
- | / | ||
- | |||
- | ... | ||
- | Maximum resident set size (kbytes): 12465200 | ||
- | ... | ||
- | |||
- | </ | ||
- | |||
- | Ici le pic est donc ~12.4 Go | ||
- | |||
- | ===== Connaître la mémoire utilisée à l' | ||
- | |||
- | * regarder le fichier / | ||
- | |||
- | Il y a ici les diverses mémoires utilisées par le process dont VmPeak (virtuelle), | ||
- | * regarder " | ||
- | * on peut aussi accéder aux informations contenues dans / | ||
- | |||
- | https:// | ||
- | |||
- | |||
- | ===== Avoir une évolution (une courbe) au cours du temps ===== | ||
- | |||
- | * soit on se fait notre propre script pour lire régulièrement les infos de / | ||
- | * soit on appelle top en background (et éventuellement on redirige la sortie vers un fichier d' | ||
- | top -b -n 100 -d 1 -p pid > output | ||
- | où | ||
- | pid est à remplacer par le numéro du process qu'on veut suivre (qui est obtenu avec top ou ps, mais on peut automatiser) | ||
- | 100 est le nombre de fois | ||
- | 1 c'est le pas en secondes | ||
- | * soit on appelle la fonction C ci-dessus à certains points du programme (là où on sait qu'il y a eu des allocations/ | ||
- | * soit on utilise des paquets déjà faits, comme ceux-ci (psutil ou ressource) en Python : | ||
- | http:// | ||
- | * soit on utilise des outils d' | ||
- | |||
- | A choisir en fonction des besoins et des préférences... | ||
- | |||