LINUX.ORG.RU

Еще раз про память

 , , , ,


1

2

Привет. В продолжение активизировавшейся в последнее время дискуссии про обрабутку нехватки памяти в линуксе. По совету hakavlad отрубил дисковый свап. Привел /etc/sysctl.conf к такому виду:

vm.dirty_background_bytes=2048000
vm.dirty_bytes=4096000
vm.swappiness=150
vm.overcommit_memory=2
vm.vfs_cache_pressure=500

На tail /dev/zero, по моим ощущениям, реагирует быстрее systemd-oomd и пред приходом киллера не происходит полного зависания (я смог открыть кдешное меню). Сейчас запустил перекодирование тяжелого видео в ffmpeg. Программное кодирование h264 в 4 потока. Раньше при таком количестве потоков система вешалась. Сейчас работает, хоть и с подлагиваниями. Я смог запустить огнелис и okular уже после того, как заработал ffmpeg. Иногда кеды задумываются при переключении на другой рабочий стол. Но в целом работать можно. Да начнется срач конструктивный диалог.

★☆

По совету hakavlad отрубил дисковый свап

Где я такое советовал и когда? Ссылочку, плиз.

Ах, дисковый! Ок.

hakavlad ★★★
()
Последнее исправление: hakavlad (всего исправлений: 1)
Ответ на: комментарий от hakavlad

Как мне кажется, он работает эффективней юзерспейсных киллеров. Срабатывает быстрее. overcommit_ratio сейчас посмотрю.

hateWin ★☆
() автор топика
Ответ на: комментарий от hakavlad

/proc/meminfo:

MemTotal:        8102748 kB
MemFree:          265096 kB
MemAvailable:     223468 kB
Buffers:           14556 kB
Cached:           120508 kB
SwapCached:          768 kB
Active:          1999560 kB
Inactive:        2866760 kB
Active(anon):    1935532 kB
Inactive(anon):  2799256 kB
Active(file):      64028 kB
Inactive(file):    67504 kB
Unevictable:           0 kB
Mlocked:               0 kB
SwapTotal:      16205488 kB
SwapFree:       12259076 kB
Dirty:                 4 kB
Writeback:             0 kB
AnonPages:       4731192 kB
Mapped:           105908 kB
Shmem:              3476 kB
KReclaimable:      57664 kB
Slab:             396464 kB
SReclaimable:      57664 kB
SUnreclaim:       338800 kB
KernelStack:       10112 kB
PageTables:        33516 kB
NFS_Unstable:          0 kB
Bounce:                0 kB
WritebackTmp:          0 kB
CommitLimit:    20256860 kB
Committed_AS:   12445184 kB
VmallocTotal:   34359738367 kB
VmallocUsed:      120700 kB
VmallocChunk:          0 kB
Percpu:             2832 kB
HardwareCorrupted:     0 kB
AnonHugePages:     26624 kB
ShmemHugePages:        0 kB
ShmemPmdMapped:        0 kB
FileHugePages:         0 kB
FilePmdMapped:         0 kB
CmaTotal:              0 kB
CmaFree:               0 kB
HugePages_Total:       0
HugePages_Free:        0
HugePages_Rsvd:        0
HugePages_Surp:        0
Hugepagesize:       2048 kB
Hugetlb:               0 kB
DirectMap4k:     1901672 kB
DirectMap2M:     6445056 kB
DirectMap1G:           0 kB
cat /proc/swaps
Filename				Type		Size		Used		Priority
/dev/zram0                              partition	4051372		946004		32767
/dev/zram1                              partition	4051372		939040		32767
/dev/zram2                              partition	4051372		945780		32767
/dev/zram3                              partition	4051372		960208		32767
hateWin ★☆
() автор топика
Ответ на: комментарий от hakavlad

У меня все лежит на жестком диске.

Сколько памяти и свопа?

free -h
               total        used        free      shared  buff/cache   available
Mem:           7,7Gi       7,4Gi       142Mi       0,0Ki       161Mi        90Mi
Swap:           15Gi       3,3Gi        12Gi
hateWin ★☆
() автор топика

Но в целом работать можно.

Раз ты в курсе о такой возможности, предлагаю ей и воспользоваться. У тебя 8 гигов памяти, там весь тюнинг сводится к «верни как было и ниче не трогай».

t184256 ★★★★★
()
Ответ на: комментарий от hateWin

А зачем аж 4 zram-диска? zram давно умеет в многопоточность, если ты для этого делал.

Radjah ★★★★★
()

Ограничитель на память процессам нужным установи

nanosecond
()
Последнее исправление: nanosecond (всего исправлений: 2)
Ответ на: комментарий от t184256

Вот и нет. На дефолтных значениях 12309 воспроизводится. С тюнингованным sysctl.conf системма работает лучше.

hateWin ★☆
() автор топика
Ответ на: комментарий от hateWin

50

Следствия:

  • не сможешь утилизировать своп полностью
  • приложения могут падать очень рано, если им нужно много виртуальной памяти

Есть решения, позволяющие максимально утилизировать память без ущерба для отзывчивости.

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.