Compter les E/S disque d'un programme

Compter les E/S disque d'un programme - Codes et scripts - Linux et OS Alternatifs

Marsh Posté le 17-07-2006 à 10:47:08    

Salut tous!
 
Je cherche un moyen de compter le nombre de lectures et d'écritures faites par un processus sur un fichier. C'est pour essayer d'évaluer un programme existant, en vue de l'optimiser pour une application spécifique... Oui, ok je pourrais faire ça en modifiant le source, mais comme c'est une usine à gaz, et que ça me prendrait beaucoup de temps pour une simple évaluation, je me demande s'il n'existe pas déjà des outils qui seraient capables de m'aider...
 
Si ça vous dit quelque chose et que vous connaissez quelque chose pour m'aider, merci de me faire signe ^^


---------------
Quand j'entends le mot "société", je sors mon revolver...
Reply

Marsh Posté le 17-07-2006 à 10:47:08   

Reply

Marsh Posté le 17-07-2006 à 11:20:33    

Code :
  1. if [ `fuser -v /chemin/fichier | wc -l` -gt truc ]; then
  2. count=`expr........+1`


 
chaque fois que le fichier est ouvert ça compte +1.
 
tu fais tourner ça par exemple dans l'inittab en respawn
 
 
fuser -v repere quel process est lié àun fichier ou rep justement et ne renvoie rien si le fichier n'est pas utilisé par un processus.
par contre si ton appli ouvres le fichier une fois pour toutes et le ferme que quand il quitte tu verra rien de plus que l'ouverture.
Si l'appli est pas mal ecrite là tu verra à chaque usage du fichier (y compris en lecture).


Message édité par francoispgp le 17-07-2006 à 11:33:32
Reply

Marsh Posté le 17-07-2006 à 11:36:18    

Il ne fait qu'une ouverture, justement :/
 
J'ai trouvé Iostat, mais il faudrait que je mette mon fichier sur un disque dédié pour ne pas avoir de parasitage ...


---------------
Quand j'entends le mot "société", je sors mon revolver...
Reply

Marsh Posté le 17-07-2006 à 12:08:56    

alors fait des copies du fichier en permanance en comparant la copie au fichier avec " diff " ...
 
dans ce cas mais bonjour la perte de performance de la machine....

Reply

Marsh Posté le 17-07-2006 à 13:22:18    

C'est un fichier de 1Go qu'on lit, et on génère un résultat qui doit en faire une 20aine :ange: Sachant qu'il faut controler le nombre de lectures, et celui d'écriture pour le résultat, j'en ai pas fini :/


---------------
Quand j'entends le mot "société", je sors mon revolver...
Reply

Marsh Posté le 17-07-2006 à 13:47:53    

oui là la methode est pas terrible en effet ;) avec un gros fichier...
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed