У меня есть проблемы с огромным потреблением RAM неизвестным объектом. Это не перечислено в top
, но объем памяти доступные уменьшения со временем и выключающий все программы ничего не делает. В настоящее время это - 3,6 гибибайта, но это медленно ухудшается. Вероятно, в результате система не способна для выгрузки большой памяти после выгрузки приблизительно 1,5 гибибайт памяти, она продолжается к перегрузке.
Я использовал free -m
команда для получения этого результата:
total used free shared buff/cache available
Mem: 7875 3517 388 3595 3969 481
Swap: 9536 500 9036
Кажется, что общая память берет 3,5 гигабайта.
Это - то, что я получаю, когда я работаю df -h
:
udev 3,9G 0 3,9G 0% /dev
tmpfs 788M 80M 709M 11% /run
/dev/sdb6 23G 18G 4,1G 81% /
tmpfs 3,9G 168M 3,7G 5% /dev/shm
tmpfs 5,0M 4,0K 5,0M 1% /run/lock
tmpfs 3,9G 0 3,9G 0% /sys/fs/cgroup
/dev/sdb1 356M 76M 281M 22% /boot/efi
/dev/sdb8 37G 33G 2,0G 95% /home
/dev/sda2 746G 269G 477G 37% /data
/dev/sda3 184G 132G 43G 76% /lindata
tmpfs 788M 84K 788M 1% /run/user/1000
/home/dugi/.Private 37G 33G 2,0G 95% /home/dugi
/proc/meminfo/
содержит это, кажется, что это - действительно что-то в общей памяти:
MemTotal: 8064776 kB
MemFree: 318880 kB
MemAvailable: 493992 kB
Buffers: 36784 kB
Cached: 3960388 kB
SwapCached: 32776 kB
Active: 3732236 kB
Inactive: 3539036 kB
Active(anon): 3562316 kB
Inactive(anon): 3381848 kB
Active(file): 169920 kB
Inactive(file): 157188 kB
Unevictable: 732 kB
Mlocked: 732 kB
SwapTotal: 9765884 kB
SwapFree: 9253044 kB
Dirty: 516 kB
Writeback: 0 kB
AnonPages: 3269552 kB
Mapped: 493840 kB
Shmem: 3670056 kB
Slab: 264136 kB
SReclaimable: 136840 kB
SUnreclaim: 127296 kB
KernelStack: 23296 kB
PageTables: 82464 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 13798272 kB
Committed_AS: 20782644 kB
VmallocTotal: 34359738367 kB
VmallocUsed: 0 kB
VmallocChunk: 0 kB
HardwareCorrupted: 0 kB
AnonHugePages: 831488 kB
ShmemHugePages: 0 kB
ShmemPmdMapped: 0 kB
CmaTotal: 0 kB
CmaFree: 0 kB
HugePages_Total: 0
HugePages_Free: 0
HugePages_Rsvd: 0
HugePages_Surp: 0
Hugepagesize: 2048 kB
DirectMap4k: 1783952 kB
DirectMap2M: 6498304 kB
DirectMap1G: 0 kB
Однако, когда я перечисляю материал в использовании общей памяти ipcs --human
, Я получаю только несколько сотен мегабайтов удаленной памяти:
------ Message Queues --------
key msqid owner perms size messages
------ Shared Memory Segments --------
key shmid owner perms size nattch status
0x00000000 268959744 dugi 600 386,8K 2 dest
0x00000000 265879554 dugi 600 512K 2 dest
0x00000000 557059 dugi 600 16M 2 dest
0x00000000 6258692 dugi 600 1K 2 dest
0x00000000 271974405 dugi 600 512K 2 dest
0x00000000 31784966 dugi 600 16M 2 dest
0x00000000 819207 dugi 600 16M 2 dest
0x00000000 274464776 dugi 600 512K 2 dest
0x00000000 28704777 dugi 600 512K 2 dest
0x00000000 274694154 dugi 600 512K 2 dest
0x00000000 264372236 dugi 600 512K 2 dest
0x00000000 272465933 dugi 600 4M 2 dest
0x00000000 145522702 dugi 600 16M 2 dest
0x00000000 274563088 dugi 600 7,6M 2 dest
0x00000000 113934353 dugi 600 74K 2 dest
0x00000000 215908370 dugi 600 66,2K 2 dest
0x00000000 35913747 dugi 600 512K 2 dest
0x00000000 274595860 dugi 600 7,6M 2 dest
0x00000000 149946389 dugi 600 512K 2 dest
0x00000000 273842198 dugi 600 128M 2 dest
0x00000000 115015703 dugi 600 29,3K 2 dest
0x00000000 150044696 dugi 600 64M 2 dest
0x00000000 143425561 dugi 600 32,5K 2 dest
0x00000000 150011930 dugi 600 1M 2 dest
0x00000000 149749788 dugi 600 512K 2 dest
0x00000000 149848094 dugi 600 64M 2 dest
0x00000000 149815327 dugi 600 1M 2 dest
0x00000000 166363168 dugi 700 2,2M 2 dest
0x00000000 166395937 dugi 600 384K 2 dest
0x00000000 166428706 dugi 600 512K 2 dest
0x00000000 166461475 dugi 700 53,5K 2 dest
0x00000000 166625316 dugi 700 376,6K 2 dest
0x00000000 166658088 dugi 700 13,5K 2 dest
0x00000000 166690857 dugi 700 88,7K 2 dest
------ Semaphore Arrays --------
key semid owner perms nsems
Если я использую ipcs -m | awk '{sum+=$5} END{print sum}'
, это говорит, что существует 366 790 104 байта, который составляет 366 МБ. Это - намного меньше, чем, что это занимает.
Я использую Ubuntu 16.04, обновленную до 17,04. Проблема уже была там перед обновлением. Программы, которые я использую почти постоянно, являются QtCreator, Vivaldi, проявляют, gcc, и обычные как оболочка гнома, наутилус или gedit.
Память никогда не выгружается, я не могу погуглить способ найти причину или только удалить ее, после того как в день или силу подкачивают его или что-то, я не хочу перезапускать свой компьютер несколько раз в неделю. Какие-либо идеи, какова может быть проблема?
Править: Я видел, что он сосет выше на приблизительно 120 мегабайтов памяти ни по какой бывшей известной причине. У меня был Vivaldi (который делает широкое применение общей памяти), закрытие в то время, потому что я подозревал это в использовании порождения проблемы. Единственная вещь, которую я сделал в то время, состоит в том, что открытый Firefox впервые после последнего перезапуска (один только Firefox не может быть причиной, потому что я не выполнял его перед теми гигабайтами, был заполнен).
РЕДАКТИРОВАНИЕ № 2: Перезапуск X-сервера удаляет материал из общей памяти, но это не решение, потому что X-сервер является точно вещью, которую я не хочу перезапускать (оболочка гнома - замена не помогает). Если я помню уроки об общей памяти правильно, это означает, что память захватывается за что-то связанное с X-сервером или оболочкой Gnome, которая правильно освобождает его на выходе, но никогда не стирает его при выполнении (своего рода поврежденная сборка "мусора"?).
Редактирование № 3: Интересно, связало ли это это: https://github.com/mpv-player/mpv/issues/3931
Возможно, smemstat покажет память hogger (s). Используйте:
sudo apt-get install smemstat
sudo smemstat