1

Когда вы пытаетесь оценить использование памяти и получить объем свободной памяти, какой из них считается более правильным, в процентах или размере? По сравнению с использованием процессора, я знаю, что люди используют среднюю нагрузку, деленную на количество ядер, а не только среднюю нагрузку.

Исходя из выбранного вами индекса, какой порог для него, если вы считаете, что лучше подождать, а не отправлять больше рабочих мест? По сравнению с использованием процессора, кто-то говорит, что он используется на 70%, а кто-то говорит, что это 100%.

Спасибо и всего наилучшего!

2 ответа2

2

Будьте осторожны, как вы измеряете. По моему опыту, простой запуск free -t почти всегда будет показывать, что используется весь Mem, а весь Swap не используется. Это не дает полной картины.

Обратите внимание на строку « -/+ buffers/cache », которая показывает, где ядро использует память для различных вещей. Это покажет некоторые из "flex", доступных в системе. Не планируйте использовать все это пространство кеша, поскольку переход на диск, а не кеш, также снижает производительность.

Вероятно, вы можете эффективно увеличить объем памяти в блоке, пока ОС не сможет использовать всю память для буферов / кэша и не увидит постоянного улучшения производительности.

Переверните и, фактически, отвечая на ваш вопрос, не позволяйте буферам / кешу становиться слишком маленькими ... фактические числа будут варьироваться в вашей системе и в зависимости от вашей нагрузки. Два примера на соседних машинах показывают этот кэш от 700 МБ до 1 ГБ и 40-50% от общего объема памяти.

Наверное, все это тоже где-то настраивается в ядре.

1

Это действительно зависит от вашего предпочтения между значениями в процентах и размере для измерений использования памяти.

Большинство техников, которых я видел, предпочитают значения размеров просто потому, что это гораздо точнее. Использование 90% в системе объемом 1 ГБ означает, что у вас осталось только 100 МБ - пора следить за перегрузкой диска! Использование 90% в системе 8 ГБ означает, что у вас все еще есть хорошие 800 МБ.

Теоретически память должна быть заполнена на 100%, это означает, что все инструкции и данные помещаются в буфер в ОЗУ (самый быстрый путь), а не на жесткий диск.

Мне лично всегда нравится оставлять около 300 МБ оперативной памяти, когда я многозадачен. Это позволит мне открыть несколько веб-страниц для быстрого ознакомления и не замедлять работу системы.

РЕДАКТИРОВАТЬ о, просто вспомнил, что вы на самом деле спрашивали о сервере ... ну, в таком случае, сколько ОЗУ вы должны оставить свободным, зависит от типа работы, которую вы отправляете. Если у вас есть полный контроль над использованием памяти, я бы порекомендовал вам просто отправить столько заданий, сколько будет храниться в ОЗУ (так как в любом случае вы полностью контролируете, нет смысла оставлять ОЗУ неиспользованной, а?)

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .