Linux /proc/meminfo
mostra un numero di statistiche di utilizzo della memoria.Come misurare in modo affidabile la memoria disponibile in Linux?
MemTotal: 4040732 kB
MemFree: 23160 kB
Buffers: 163340 kB
Cached: 3707080 kB
SwapCached: 0 kB
Active: 1129324 kB
Inactive: 2762912 kB
C'è un bel po 'di sovrapposizione tra di loro. Ad esempio, per quanto ho capito, può esserci una cache di pagine attiva (appartiene a "cache" e "attivo") e cache di pagine inattiva ("non attivo" + "memorizzato nella cache").
Quello che voglio fare è misurare la memoria "libera", ma in un modo che includa pagine usate che potrebbero essere eliminate senza un impatto significativo sulle prestazioni generali del sistema.
Inizialmente, ero propenso a usare "free" + "inattivo", ma l'utilità "free" di Linux utilizza "free" + "cache" nella sua visualizzazione "buffer-adjusted", quindi sono curioso di sapere l'approccio è
Quando il kernel esaurisce la memoria, qual è la priorità delle pagine da eliminare e qual è la metrica più appropriata per misurare la memoria disponibile?
Controllare anche 'Committed_AS', che è la dimensione effettiva che il kernel ha effettivamente _promised_ ai processi. Sembra che tu stia tentando di più di prevedere cosa succede se assegni/blocchi/usi xx byte, dato l'attuale utilizzo della memoria? –
@ Tim Post, sì, non ho nemmeno iniziato a mettere il sovrastimaggio nella foto. Sto cercando di ottenere un numero che preveda quando iniziano le cose brutte se viene utilizzata più memoria. –