Newsgroup: it.comp.os.linux.sys
Titolo: Verificare ram utilizzata da un programma

Non riesco a trovare un metodo intelligente per capire quanta ram un
programma utilizza.
Vorrei una cosa tipo:
ramusage <programma>
10M
Dove 10Megabyte è il massimo allocato dal programma durante la sua
esecuzione...
Su osx ho trovato vmmap ma si aggancia a un processo già in
esecuzione,mm

 esecuzione,mm
ad esempio:
cat /proc/6214/status
Name:   master
State:  S (sleeping)
SleepAVG:       100%
Tgid:   6214
Pid:    6214
PPid:   1
TracerPid:      0
Uid:    0       0       0       0
Gid:    0       0       0       0
FDSize: 256
Groups: 0
VmSize:     3668 kB
VmLck:         0 kB
VmRSS:      1352 kB
VmData:      176 kB
VmStk:        12 kB
VmExe:        24 kB
VmLib:      3352 kB
Threads:        1
SigPnd: 0000000000000000
ShdPnd: 0000000000000000
SigBlk: 0000000000000000
SigIgn: 0000000000001000
SigCgt: 000000000001644f
CapInh: 0000000000000000
CapPrm: 00000000fffffeff
CapEff: 00000000fffffeff
dove...
VmSize: The size of the virtual memory allocated to the process
VmLck: The amount of locked memory
VmRSS: The amount of memory mapped in RAM ( instead of swapped out )
VmData: The size of the Data segment
VmStk: The stack size
VmExe: The size of the executable segment
VmLib: The size of the library code
VmPTE: Size of the Page Table entry
-- 
Rebbe on bmw r1150r dark blue (2006)

 > Su osx ho trovato vmmap ma si aggancia a un processo già in

Sì ma se il processo durasse molto poco come faccio ad essere sicuro
di beccare il momento in cui si è "allargato" di più?

 di beccare il momento in cui si č "allargato" di piů?
Se invece che chiedere soluzioni enunciassi il tuo problema forse qualche
soluzione corretta si potrebbe trovare.
-- 
Flavio Visentin
Scientists have finally discovered what's wrong with the female brain:
On the left side, there is nothing right, and on the right side, there
is nothing left.

 is nothing left.
Non c'è nessun problema, voglio solo vedere per curiosità quanto
succhiano i miei programmi, senza dover andare a infognarmi troppo
profiler complicati e magari per ogni linguaggio.
Lo spazio è più complicato del tempo da misurare in questo modo ma
confido che ci sia qualche modo intelligente...

 profiler complicati e magari per ogni linguaggio.
Se vuoi una cosa deterministica non c'è altro modo
Se ti accontenti di un campionamento
ps in un istante
top istantanea interattiva
atop per tracciare l'uso nel tempo


 profiler complicati e magari per ogni linguaggio.
Hai mai provato conky ? ;-)


Bello bello ma non è quello che cercavo, non mi metto di certo a
guardare un monitor di sistema e segnare a penna i consumi di ram,
dev'essere tutto automatico...


c'e' un comando che avevo visto l'altro giorno per solaris... mumble,
mumble... non mi ricordo mai le cose quando mi servono..... 
www.google.com
--> solaris memory used by process
Eccolo qua, e funziona anche su Linux: pmap
Il fatto che mostri l'albero di tutti i processi non e' nemmeno
sbagliato.
Effettivamente il software "pippofox", se non e' stato compilato
staticamente, non usera' memoria solo lui, ma ci saranno anche le
librerie che lui utilizza. Alcune librerie saranno probabilmente
condivise, ma altre saranno sicuramente utilizzate solo da quel
software.
p.s.: usate google per queste cose. Ci sono piu' cose di quelle che
ciascuno di noi puo' ricordare.