Voglio eseguire un programma che consuma memoria e tenere traccia del suo utilizzo della memoria nel tempo. Il programma termina dopo pochi secondi dopo essere stato richiamato.
Questa domanda precedente suggeriva il pacchetto sysstat . Mentre la sua pidstatutilità fa in parte ciò che voglio, non riesce a soddisfare le mie 2 esigenze:
- Accetta un intervallo minimo di
1s, ma voglio misurare con una granularità più breve. (0.1sdovrebbe andare bene) - Tiene traccia solo di un processo esistente, mentre non posso sempre essere presente per copiare e incollare il pid.
Ci sono alcuni script / utilità alternativi per fare meglio il lavoro di invocazione e misura?
/proc/$PID/statm), quindi dormire per 100ms e ripetere. Perché non si può solo continuare a lanciare il PID associatostatmattraversocat, forse utilizzare alcuni regex per filtrare fuori i valori supplementari / non necessari, e basta fare unsleep 0.01? Alcuni sistemi operativi non consentirannosleepvalori inferiori al secondo , quindi in quel caso dovresti prendere la route Python (e invece utilizzare latimelibreria integrata di Python per dormire).