[RISOLTO] top, htop e free. Chi ha ragione?

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.
Rispondi
Avatar utente
Xunyl
Linux 1.x
Linux 1.x
Messaggi: 170
Iscritto il: gio 28 gen 2010, 15:57
Slackware: current64
Kernel: 5.4.54
Desktop: Sway

[RISOLTO] top, htop e free. Chi ha ragione?

Messaggio da Xunyl »

Proprio così, top e free, per quanto riguarda i dati di utilizzo di ram e cpu, restituiscono valori identici ma htop no. Solitamente top e free indicano un consumo di ram maggiore rispetto a htop, e anche la % di utilizzo della cpu non coincide. Chi ha ragione? Poco fa ho fatto in modo di mandare la cpu al 100% e ho successivamente controllato i dati restituiti da tutte e 3 le applicazioni. Top e free segnavano un utilizzo della cpu del 45% mentre htop 100%. Anche voi avete riscontrato simili differenze?
Ultima modifica di Xunyl il mer 26 set 2012, 23:53, modificato 1 volta in totale.

Avatar utente
brg
Linux 3.x
Linux 3.x
Messaggi: 580
Iscritto il: sab 12 mar 2011, 14:20
Slackware: 15.0
Kernel: 5.15.117
Desktop: KDE5
Località: Montecatini
Contatta:

Re: top, htop e free. Chi ha ragione?

Messaggio da brg »

Xunyl ha scritto:solitamente top e free indicano un consumo di ram maggiore rispetto a htop
Sei sicuro di saper leggerli bene? Ho appena fatto la prova sul mio pc ed i dati mi paiono identici:

Codice: Seleziona tutto

Mem:   7917560k total,  1599276k used,  6318284k free,    60084k buffers

Codice: Seleziona tutto

Mem[|||||||||||                        905/7731MB]

Codice: Seleziona tutto

             total       used       free     shared    buffers     cached
Mem:          7731       1562       6169          0         58        598
-/+ buffers/cache:        905       6825
Swap:        15632          0      15632

Secondo me è la conversione kB-MB che ti frega, per la cronaca ho lanciato free -m, che dà i dati della ram usata in MB invece che in kB.
Xunyl ha scritto:Poco fa ho fatto in modo di mandare la cpu al 100% e ho successivamente controllato i dati restituiti da tutte e 3 le applicazioni. Top e free segnavano un utilizzo della cpu del 45% mentre htop 100%. Anche voi avete riscontrato simili differenze?
Hai un multi processore? Il comando top arriva a (100*numero processori/core)%, mentre htop dà i dati per ogni core/processore.

Avatar utente
Xunyl
Linux 1.x
Linux 1.x
Messaggi: 170
Iscritto il: gio 28 gen 2010, 15:57
Slackware: current64
Kernel: 5.4.54
Desktop: Sway

Re: top, htop e free. Chi ha ragione?

Messaggio da Xunyl »

brg ha scritto:Sei sicuro di saper leggerli bene? Ho appena fatto la prova sul mio pc ed i dati mi paiono identici:

Codice: Seleziona tutto
Mem: 7917560k total, 1599276k used, 6318284k free, 60084k buffers


Codice: Seleziona tutto
Mem[||||||||||| 905/7731MB]


Codice: Seleziona tutto
total used free shared buffers cached
Mem: 7731 1562 6169 0 58 598
-/+ buffers/cache: 905 6825
Swap: 15632 0 15632
No, io utilizzo l'opzione -m in modo tale da avere i risultati sempre in MB. Però ci ho fatto caso solo ora:

Codice: Seleziona tutto

             total       used       free     shared    buffers     cached
Mem:          3919       1325       2594          0         69        789
-/+ buffers/cache:        467       3452
Swap:         9640          0       9640

Codice: Seleziona tutto

Mem[|||||||||||                        467/3919MB]
io leggevo 1325 su free ma vedo che c'è lo stesso valore che in htop alla voce "-/+ buffers/cache:". Ho sempre pensato che il valore corretto di riferimento per la quantità di ram utilizzata fosse quello sopra :oops:
Non è così?
brg ha scritto:Hai un multi processore? Il comando top arriva a (100*numero processori/core)%, mentre htop dà i dati per ogni core/processore.
No, la macchina su cui ho fatto questo test (non è questa) ha un intel pentium m 32 bit single core.

Avatar utente
brg
Linux 3.x
Linux 3.x
Messaggi: 580
Iscritto il: sab 12 mar 2011, 14:20
Slackware: 15.0
Kernel: 5.15.117
Desktop: KDE5
Località: Montecatini
Contatta:

Re: top, htop e free. Chi ha ragione?

Messaggio da brg »

Non proprio: grossi processi come KDE o altri (compreso il kernel) cercano di sfruttare al massimo la ram immagazzinanovi più dati temporanei possibili, tuttavia questi dati temporanei (buffers e cache) possono essere cestinati senza rimorsi in qualunque momento se un nuovo programma ha bisogno di spazio. Non so se hai mai notato che quando apri una directory con molti file (tipo /usr/include o /usr/lib) la prima volta si carica lentamente, ma se ci torni si carica quasi istantaneamente, indipendentemente dalla velocità del disco fisso: i dati vengono letti direttamente dalla ram dove erano stati immaganizzati la prima volta, senza rileggere tutto il disco.
Molti di quelli che criticano l'uso di ram di Linux o di KDE non tengono conto di questo fatto...

Avatar utente
Xunyl
Linux 1.x
Linux 1.x
Messaggi: 170
Iscritto il: gio 28 gen 2010, 15:57
Slackware: current64
Kernel: 5.4.54
Desktop: Sway

Re: top, htop e free. Chi ha ragione?

Messaggio da Xunyl »

Ok, quindi se voglio sapere la quantità reale di ram occupata cosa devo guardare? Perché in sistemi con poca ram è importante avere dati precisi per sapere anche come configurare il tutto. Htop restituisce solo i valori di cache e buffers vari mentre la memoria totale occupata è indicata da free e top?

Avatar utente
-sf
Linux 2.x
Linux 2.x
Messaggi: 209
Iscritto il: ven 15 lug 2011, 1:20
Slackware: 13.37
Kernel: 2.6.37.6-smp
Desktop: KDE

Re: top, htop e free. Chi ha ragione?

Messaggio da -sf »

Da quel che ricordo un:

Codice: Seleziona tutto

echo 3 > /proc/sys/vm/drop_caches
dovrebbe liberare la ram da tutto cio' che non serve "realmente".

Dai un "free -m" prima e dopo cosi da vedere i cambiamenti :)

Avatar utente
Xunyl
Linux 1.x
Linux 1.x
Messaggi: 170
Iscritto il: gio 28 gen 2010, 15:57
Slackware: current64
Kernel: 5.4.54
Desktop: Sway

Re: top, htop e free. Chi ha ragione?

Messaggio da Xunyl »

Prima:

Codice: Seleziona tutto

             total       used       free     shared    buffers     cached
Mem:          3919       1185       2734          0         68        614
-/+ buffers/cache:        502       3417
Swap:         9640          0       9640
Dopo:

Codice: Seleziona tutto

             total       used       free     shared    buffers     cached
Mem:          3919        641       3278          0          1        146
-/+ buffers/cache:        494       3425
Swap:         9640          0       9640
Tuttavia continuo a non capire... cosa devo guardare per capire quanta memoria è effettivamente, fisicamente occupata?

Avatar utente
Ansa89
Iper Master
Iper Master
Messaggi: 2703
Iscritto il: mer 29 ago 2007, 17:57
Nome Cognome: Stefano Ansaloni
Slackware: 14.2 64bit
Kernel: 4.9.61
Desktop: XFCE 4.12
Località: Modena

Re: top, htop e free. Chi ha ragione?

Messaggio da Ansa89 »

Xunyl ha scritto:cosa devo guardare per capire quanta memoria è effettivamente, fisicamente occupata?
Il primo valore nella colonna "used" (nel caso precedente prima avevi 1185 MB occupati, dopo 641 MB)

Avatar utente
Xunyl
Linux 1.x
Linux 1.x
Messaggi: 170
Iscritto il: gio 28 gen 2010, 15:57
Slackware: current64
Kernel: 5.4.54
Desktop: Sway

Re: top, htop e free. Chi ha ragione?

Messaggio da Xunyl »

Perfetto, ora è tutto chiaro, grazie a tutti =D>

Avatar utente
targzeta
Iper Master
Iper Master
Messaggi: 6629
Iscritto il: gio 3 nov 2005, 14:05
Nome Cognome: Emanuele Tomasi
Slackware: 64-current
Kernel: latest stable
Desktop: IceWM
Località: Carpignano Sal. (LE) <-> Pisa

Re: [RISOLTO] top, htop e free. Chi ha ragione?

Messaggio da targzeta »

Il primo valore di used indica la memoria occupata attualmente, questo valore però è comprensivo anche dei buffer e delle cache dei programmi. Questa memoria (cache e buffer) può tranquillamente essere eliminata in caso di bisogno. Il secondo valore, quindi, indica la memoria che "non può essere liberata". In altre parole, quando il primo valore raggiunge la dimensione della memoria fisica il kernel inizia a liberare buffer e cache. Se anche il secondo valore raggiunge la dimensione fisica della memoria, il kernel swappa, se può, altrimenti inizia a killare processi.

Prendi questo discorso con le pinze. Anzi, se mi sbaglio e qualcuno mi corregge, tanto meglio.
Emanuele
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama

Avatar utente
Xunyl
Linux 1.x
Linux 1.x
Messaggi: 170
Iscritto il: gio 28 gen 2010, 15:57
Slackware: current64
Kernel: 5.4.54
Desktop: Sway

Re: [RISOLTO] top, htop e free. Chi ha ragione?

Messaggio da Xunyl »

Grazie Emanuele, direi che spiegato meglio di così non si può :thumbright:

Rispondi