бесплатно и htop сообщают совершенно разные цифры

Смотрите следующий скриншот:

Об общем объеме памяти сообщается в 8 ГБ обоими htop а также free, но пока free сообщает, что только 2.7GB "используется", htop сообщает, что используется 7.53GB. free сообщает, что 5 ГБ это буферы / кеш, а htop сообщает об этом как 100 МБ.

я думаю htop здесь правильно, потому что система вялая и kswapd0 имеет высокую загрузку процессора.

В чем причина этого несоответствия?

1 ответ

Решение

https://www.linuxatemyram.com/

Классическая путаница в отношении кешированных и используемых. htop считает в кеше, как используется, но free не является. Поскольку это Linux, прочитайте /proc/meminfo сами и посмотрите, как счетчики связаны друг с другом.

Изменить: вы спрашивали конкретно о разнице в кешировании.

освобождает от procps, по-видимому, делает кеширование страниц и исправление slab. Из proc / sysinfo.c

  kb_main_cached = kb_page_cache + kb_slab_reclaimable;

htop - кэш страницы плюс восстановление плиты минус разделяемая память. Linux / LinuxProcessList.c

   this->cachedMem = this->cachedMem + sreclaimable - shmem;

Честно говоря, на современном Linux я бы посмотрел на MemAvailable и некоторые другие счетчики в /proc/meminfo напрямую. Если бы я заботился о цифрах.


Инструменты производительности, хотя и очень полезны, могут вводить в заблуждение, сбивать с толку и плохо документироваться. Не думайте, что разные инструменты рассчитывают одноименную вещь по одному и тому же алгоритму.


Вялое и медленное время отклика может быть любым. Ограничения IOPS хранилища или время отклика, загрузка страниц памяти из-за медленного хранения, высокая загрузка ЦП (возможно, не в момент, когда вы сделали этот снимок экрана), медленная сеть, плохо написанные приложения и так далее.

Определите, что медленно и сколько. У вас много запущенных приложений: µTorrent Server, mysql, mongo, plex, некоторые другие контейнеры. Включите медленные журналы запросов. Профиль приложения. Зарегистрируйте все показатели производительности, которые вы можете в базе данных временных рядов и посмотрите на графики.

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