Я обновил оперативную память на моем Ubuntu 20.04.1 LTS с 16 ГБ до 32 ГБ. Казалось, что все работает нормально, то есть машина работает, и cat / proc / meminfo
показывает 32 ГБ оперативной памяти. Сегодня машина казалась значительно медленнее, поэтому я проверил еще раз, и вот как выглядел top
:
top - 14:00:38 up 17 days, 18:39, 1 user, load average: 2.75, 2.39, 2.28
Tasks: 510 total, 2 running, 507 sleeping, 0 stopped, 1 zombie
%Cpu(s): 11.6 us, 1.8 sy, 0.1 ni, 86.5 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
MiB Mem : 31954.0 total, 1612.3 free, 13689.8 used, 16652.0 buff/cache
MiB Swap: 2048.0 total, 368.6 free, 1679.4 used. 17463.2 avail Mem
Почему свободно только 1612,3 M, когда общее количество составляет 31954, а используется 13689? Нужно ли мне переустанавливать Ubuntu после обновления оперативной памяти?
Если это поможет, вот последняя версия cat / proc / meminfo
MemTotal: 32720944 kB
MemFree: 1527484 kB
MemAvailable: 17764224 kB
Buffers: 1158432 kB
Cached: 15098500 kB
SwapCached: 42640 kB
Active: 17130404 kB
Inactive: 11875732 kB
Active(anon): 11796372 kB
Inactive(anon): 1297452 kB
Active(file): 5334032 kB
Inactive(file): 10578280 kB
Unevictable: 596 kB
Mlocked: 580 kB
SwapTotal: 2097148 kB
SwapFree: 377668 kB
Dirty: 18900 kB
Writeback: 0 kB
AnonPages: 12706816 kB
Mapped: 3533448 kB
Shmem: 353120 kB
KReclaimable: 796040 kB
Slab: 1239524 kB
SReclaimable: 796040 kB
SUnreclaim: 443484 kB
KernelStack: 31520 kB
PageTables: 107500 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 18457620 kB
Committed_AS: 35499648 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 92868 kB
VmallocChunk: 0 kB
Percpu: 17536 kB
HardwareCorrupted: 0 kB
AnonHugePages: 65536 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
FileHugePages: 0 kB
FilePmdMapped: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
Hugetlb: 0 kB
DirectMap4k: 16035156 kB
DirectMap2M: 17354752 kB
DirectMap1G: 1048576 kB
Надеюсь, у вас все хорошо.
У вас 17,7 ГБ доступной памяти.
Linux использует всю неиспользуемую память для оптимизации ввода-вывода, поэтому для буферов / кеша это не означает, что в вашей системе нет доступной памяти.
Итак, у вас есть: всего 32 ГБ, свободно 1,6 ГБ, используемые приложениями 13,6 ГБ и 16,6 ГБ в буферах / кэш-памяти. При необходимости система может использовать большую часть буферов / кеша. Память, которая действительно может быть использована, - это MemAvailable, размер которой составляет 17,7 ГБ.
Выполните такие команды, как:
free -h
Для большей ясности.
Я думаю, ваша проблема в том, что у вас есть значение Swappiness по умолчанию, 60, поэтому своп будет использоваться, когда вы достигнете примерно 60% используемой оперативной памяти.
Вы можете проверить это значение с помощью:
$ sysctl vm.swappiness
vm.swappiness = 60
Обычно использование подкачки происходит медленно, потому что доступ к дискам намного медленнее.
В своих облачных системах и на рабочих станциях я не использую swap, и если я использую по какой-либо причине, я устанавливаю для swappiness значения 1 или 10.
Чтобы делать это, пока вы не перезагрузите компьютер, вы можете установить этот параметр ядра с помощью выполнение:
sudo sysctl vm.swappiness=10
Затем вы можете отключить свопинг и снова включить его.
sudo swapoff
и снова включить
sudo swapon -a
Ваш компьютер снова заработает.:)
Ура