/proc/meminfo в чем разница между MemFree и MemAvailable
Собственно, команда:
# cat /proc/meminfo
MemTotal: 1882064 kB
MemFree: 1376380 kB
MemAvailable: 1535676 kB
Buffers: 2088 kB
Cached: 292324 kB
SwapCached: 0 kB
Active: 152944 kB
Inactive: 252628 kB
Active(anon): 111328 kB
Inactive(anon): 16508 kB
Active(file): 41616 kB
Inactive(file): 236120 kB
Unevictable: 0 kB
Mlocked: 0 kB
SwapTotal: 2097148 kB
SwapFree: 2097148 kB
Dirty: 40 kB
Writeback: 0 kB
AnonPages: 111180 kB
Mapped: 56396 kB
Shmem: 16676 kB
Slab: 54508 kB
SReclaimable: 25456 kB
SUnreclaim: 29052 kB
KernelStack: 2608 kB
PageTables: 5056 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 3038180 kB
Committed_AS: 577664 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 14664 kB
VmallocChunk: 34359717628 kB
HardwareCorrupted: 0 kB
AnonHugePages: 24576 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 69632 kB
DirectMap2M: 2027520 kB
В чем разница между MemFree и MemAvailable?
Учитывается ли SWAP в этих параметрах?
Ответы (1 шт):
Автор решения: Sergei Kirjanov
→ Ссылка
Free -- это которая вообще не используется
Available -- это сколько скорее всего можно освободить (от кэша и т. п.) если потребуется программе
Следовательно если вопрос стоит:
- а запустится ли здесь Х "нормально" -- смотрим Available
- а не убрать ли с сервера лишнюю память -- Free
Подробности от @avp:
Available ... amount of memory that is available for a new workload, without pushing the system into swap
Изменение в ядре /proc/meminfo: provide estimated available memory