У меня очень странная проблема, с которой мне трудно определить причину.
У меня есть Mac Pro (2008, 8-ядерный 2,8 ГГц, 8800GT) с 14 ГБ ОЗУ (недавно обновленный из-за этой проблемы!).
Когда я загружаю свою систему и захожу в систему, vm_stat / top / Activity Monitor покажет, что в kernel_task выделено около 150 МБ, а на машине выделено около 800 МБ выделенной памяти.
Даже на начальном этапе 800 МБ кажутся огромным количеством проводной памяти, которая должна быть выделена без запуска приложений, но становится все хуже. (Примечание: проводная связь заблокирована, память не удаляется )
Через очень короткое время, иногда вызываемое чем-то простым, например, запуском терминала, kernel_task увеличится до 8-900 МБ Real Mem (RSIZE), а проводная память ускорится до 1,6 ГБ (подразумевая, что все дополнительные запросы памяти предназначены для проводная оперативная память в ядре).
Если я закрою все (IE: нет запущенных приложений, заблокирую монитор активности или терминал для просмотра сверху), то не произойдет заметного сокращения ни в kernel_task RSIZE, ни в использовании проводной памяти. Если пойти в обратном направлении и загрузить систему задачами, это также показывает, что проводная память не уменьшается, и, что важно, она не уменьшается в зависимости от интенсивной замены.
Если я выйду из системы и снова войду в систему, это немного уменьшится (450 МБ kernel_task, 1,28 ГБ Wired), но не обратно.
Я не запускаю никаких дурацких kext s - и, кроме того, kextstat не показывает там огромного распределения памяти; самое большое из них - com.apple.nvidia.nv50hal с объемом памяти около 4 МБ.
Машина чувствует себя в целом более вялой, когда это произошло, что неудивительно, потому что такой огромный объем оперативной памяти был помечен как нестраничный.
Итак, у меня есть несколько вопросов:
1) Есть ли хороший способ диагностировать, что выделило всю эту проводную память? Это часто более чем в 2 раза превышает размер kernel_task, без запуска приложений. Реальное общее количество памяти, кажется, не складывается - кажется, что есть куча оперативной памяти, которая нигде не учитывается.
2) Что происходит, чтобы заставить ядро внезапно потребовать в 6 раз больше памяти?