Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
Prochaine révisionLes deux révisions suivantes
faq:consommation_memoire [2018/01/24 10:28] ltaulellfaq:consommation_memoire [2020/08/25 15:58] – modification externe 127.0.0.1
Ligne 5: Ligne 5:
 Il y a ici les diverses mémoires utilisées par le process dont VmPeak (virtuelle), VmHWM (physique), VmRSS (résiduelle). La résiduelle devrait suffire dans ton analyse.  Il y a ici les diverses mémoires utilisées par le process dont VmPeak (virtuelle), VmHWM (physique), VmRSS (résiduelle). La résiduelle devrait suffire dans ton analyse. 
   * regarder "top" - on peut rajouter des colonnes en tapant "f" (fields) ; "top" se base sur les informations contenues dans /proc/pid/status    * regarder "top" - on peut rajouter des colonnes en tapant "f" (fields) ; "top" se base sur les informations contenues dans /proc/pid/status 
-  * on peut aussi accéder aux informations contenues dans /proc/pid/status depuis le programme lui même. Par exemple, en C :  +  * on peut aussi accéder aux informations contenues dans /proc/pid/status depuis le programme lui même. Par exemple, en C : https://bitbucket.org/code_aster/codeaster-src/src/tip/bibc/utilitai/mempid.c 
- +
-https://bitbucket.org/code_aster/codeaster-src/src/tip/bibc/utilitai/mempid.c +
  
 ===== Avoir une évolution (une courbe) au cours du temps  ===== ===== Avoir une évolution (une courbe) au cours du temps  =====
Ligne 20: Ligne 18:
  
 où  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)  +''pid'' est à remplacer par le numéro du process qu'on veut suivre (qui est obtenu avec top ou ps, mais on peut automatiser)  
-(ou 100 est le nombre de fois et 1 c'est le pas en secondes)+(ou ''-n 100'' est le nombre de fois et ''-d 1'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/desalocations mémoire importantes)    * soit on appelle la fonction C ci-dessus à certains points du programme (là où on sait qu'il y a eu des allocations/desalocations mémoire importantes) 
   * soit on utilise des paquets déjà faits, comme ceux-ci (psutil ou ressource) en Python :    * soit on utilise des paquets déjà faits, comme ceux-ci (psutil ou ressource) en Python : 
 http://fa.bianp.net/blog/tag/memory_profiler.html  http://fa.bianp.net/blog/tag/memory_profiler.html 
-  * soit on utilise des outils d'analyse plus puissants (mais plus difficiles à les apprendre), p.ex. Valgrind (avec son module "massif"+  * soit on utilise des outils d'analyse plus puissants (mais plus difficiles à apprendre), p.ex. Valgrind (avec son module "massif"
  
  
  
 {{tag> faq:consommation faq:execution faq:mémoire}} {{tag> faq:consommation faq:execution faq:mémoire}}
faq/consommation_memoire.txt · Dernière modification : 2023/12/13 15:11 de ltaulell