Использование SWAP слишком велико после обновления ОЗУ

Я обновил оперативную память на моем 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
2
задан 20 July 2021 в 15:04

1 ответ

Надеюсь, у вас все хорошо.

У вас 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

Ваш компьютер снова заработает.:)

Ура

1
ответ дан 28 July 2021 в 11:16

Другие вопросы по тегам:

Похожие вопросы: