Назад | Перейти на главную страницу

Почему на 64-битной машине невозможно использовать всю свободную память в качестве дискового кеша. Столкновение с внезапным падением дискового кеша

Я знаю, что процесс может использовать дисковый кеш в качестве свободной памяти по мере необходимости. На моей 32-битной машине я вижу, что дисковый кеш может использовать всю свободную память. Но на 64-битной машине не может. На 64-битной машине у меня 252 ГБ ОЗУ (бесплатная команда), 24 ядра и 90 дисков jbod. Запуск 45 серверов Java с -Xmx2000m для чтения / записи небольших файлов с / на диски.

Каждые 4/8/10/13 часов я также получаю внезапное падение кеша на диске. Я вижу, что после падения дискового кеша следующие 5-6 часов дисковый кеш достигает ~ 110 ГБ, но после этого в течение следующих 4-5 часов он не пересекает этот предел ~ 110 ГБ (но все еще остается ~ 80 ГБ), а затем внезапно весь кеш диска падает.

Понятия не имею, что здесь происходит. Пожалуйста, посоветуйте мне: есть ли какая-либо конфигурация системы для решения этой проблемы или проблема с jbod / памятью, если да, то как решить.

Использование ОС Linux и 64-битной JVM.

free -g
             total       used       free     shared    buffers     cached
Mem:           252        162         89          0         42         80
-/+ buffers/cache:         39        212
Swap:            1          0          1