Невыгружаемый пул windows 10 как исправить
Что делать, если невыгружаемый пул в Windows 10 занимает всю память
Просмотр запущенных приложений в Диспетчере задач — это первое, с чего всякий пользователь начинает поиск причин медленной работы компьютера. И вроде бы и с процессами всё нормально, и с дисками, но на вкладке «Производительность», если выбрать «Память», можно увидеть, что она практически вся занята и уходит в невыгружаемый пул памяти. Это означает, что имеет место утечка памяти и неважно какой объем ОЗУ имеется на ПК, в невыгружаемый пул она может уйти вся без остатка.
Основной причиной утечки в таких случаях является некорректное взаимодействие сетевых драйверов с драйверами мониторинга использования сети, хотя нельзя исключать наличия проблем с другими драйверами аппаратных компонентов ПК.
Неполадка может показаться серьёзной, на самом же деле она легко устраняется. Способов исправления существует несколько. Самый простой заключается в отключении службы мониторинга сетевой активности. Для этого откройте командой regedit редактор реестра и перейдите по следующему пути:
Эту же настройку следует проверить в ключе:
Результат будет аналогичным.
В обеих случаях для вступления новых настроек в силу потребуется перезагрузка компьютера. После этого утечка в невыгружаемый пул памяти должна прекратиться. Это самый простой и эффективный способ, но есть также и другие варианты. Например, можно установить приложение Killer Network Manager, найти в его настройках опцию управления пропускной способностью и отключить её.
Если драйвера для сетевой карты скачивались с сайта производителя, попробуйте их удалить и дать Windows 10 установить свои драйвера. Если проблема наблюдается с драйверами Microsoft, поступаем наоборот, скачиваем для карты Killer Network драйвера с официального ресурса производителя и устанавливаем их. Выше упоминалось, что утечку памяти могут вызывать не только сетевые драйвера. Определить проблемный драйвер можно с помощью утилиты Poolmon, но для этого потребуется установить набор инструментов разработки драйверов для Windows.
Скачав WDK для вашей версии Windows 10 с официальной страницы Microsoft.
Теперь откройте командную строку от имени администратора, перейдите в расположение C:\Windows\System32\drivers и выполните команду:
findstr /m /l /s Name *.sys
Где Name — имя, то есть тэг записи.
В результате вы получите список драйверов, которые с большей или меньшей долей вероятности являются источниками проблемы. Далее уже решаем, что с ними делать: удалять, заменять или откатывать к более ранним версиям.
Почему растет невыгружаемый пул памяти в Windows?
На компьютерах и серверах Windows могут возникать проблемы с исчерпанием свободной памяти, вызванной утечкой некого системного драйвера, хранящего свои данные в невыгружаемом пуле памяти системы. Невыгружаемый пул памяти (Non-paged memory) – это данные в оперативной памяти компьютера, используемые ядром и драйверами операционной системой, которая никогда не выгружается на диск (в своп/ файл подкачки), т.е. всегда находится в физической RAM памяти.
Текущий размер невыгружаемого пула памяти можно увидеть в диспетчере задач Windows на вкладке Perfomance (Производительность) в разделе Memory (Память). На скриншоте ниже видно, что практически вся память на сервере занята, и большая часть ее относится к невыгружаемому пулу 4,2 Гб (Non-paged pool / Невыгружаемый пул). В нормальном состоянии размер невыгружаемого пула редко превышает 200-400 Мб. Большой размер невыгружаемого пула часто указывает на наличии утечки памяти в каком-то системном компоненте или драйвере.
При утечке памяти в невыгружаемом пуле на сервере, в системном журнале событий появится события:
В подавляющем большинстве случаев причиной такой утечки памяти является проблема со сторонними драйверами, установленными в Windows. Как правило, это сетевые драйвера. Обратите внимание, как ведет себя пул при скачивании больших файлов (скорее всего он при этом быстро растет).
Максимальный размер невыгружаемого пула в Windows:
Для очистки пула помогает только перезагрузка, и, если для домашнего компьютера это еще может быть приемлемо, то на круглосуточно работающем сервере желательно найти нормальное решение.
Установка последних версий драйверов сетевых адаптеров
Попробуйте скачать и установить последние версии драйверов ваших сетевых адаптеров с сайта производителя.
Если у вас в Windows включено автоматическое обновление драйверов, убедитесь не начались ли проблемы после установки новых драйверов. Попробуйте откатить версию драйвера на более старую и проверить, воспроизводится ли проблема. Если проблема решилась, отключите авто обновление драйверов.
Отключение драйвера мониторинга сетевой активности Windows
Достаточно часто причиной утечки памяти в невыгружаемый пул является несовместимость драйвера мониторинга сетевой активности (Network Data Usage — NDU, %WinDir%\system32\drivers\Ndu.sys) с драйверами сетевого адаптера компьютера (чаще всего конфликтуют драйвера для сетевых карт Killer Network и MSI). Данный сервис можно отключить без особых потерей функционала Windows.
Службу можно остановить командной:
sc config NDU start= disabled
После внесения изменений нужно перезагрузить компьютер
Отключение роли Hyper-V
В некоторых случаях утечку памяти в невыгружаемый пул вызывает установленная роль Hyper-V. Если эта роль не нужна, рекомендуем отключить ее.
Команда для Windows 10:
Поиск драйвера, вызвавшего утечку памяти с помощью Poolmon
Если описанные выше способы не помогли, можно попробовать определить драйвер, который вызвал утечку памяти в невыгружаемый пул.
Для этого нам понадобится консольная утилита Poolmoon.exe, входящая в комплект разработки Windows Driver Kit (WDK). Скачайте с сайта Microsoft и установите WDK для вашей версии Windows и запустите утилиту Poolmon.exe (в WDK для Windows 10 утилита находится в каталоге C:\Program Files (x86)\Windows Kits\10\Tools\ ).
После запуска утилиты Poolman.exe нажмите клавиши P. Во втором столбце останутся теги процессов, которые используют невыгружаемую память (атрибут Nonp) Затем нажмите клавишу B, чтобы выполнить сортировку по столбцу Bytes.
В левом столбце указаны теги драйверов. Ваша задача определить файл драйвера, использующего этот тег. В нашем примере видно, что больше всего RAM в невыгружаемом пуле используют драйвера с тегами Nr22, ConT и smNp.
Вы должны проверить драйвера на наличие найденных тегов с помощью утилиты strings.exe (от Sysinternals), с помощью встроенной команды findstr или с помощью PowerShell.
Следующие команды должны найти файлы драйверов, связанные с найденными вами тегами. данными процессами можно командами:
findstr /m /l /s Nr22 %Systemroot%\System32\drivers\*.sys
findstr /m /l /s ConT %Systemroot%\System32\drivers\*.sys
findstr /m /l /s smNp %Systemroot%\System32\drivers\*.sys
Также можно воспользоваться PowerShell:
Обратите внимание, что имя драйвера теперь отображается в столбце Mapped_driver.
Если поиск не дал результатов, проверьте возможно утечка памяти вызвана не системным процессом. Запустите Task Manager, перейдите на вкладку Details, добавьте колонку NP Pool и найдите процессы с большим размером памяти в невыгружаемом пуле.
Таким образом, мы получили список файлов драйверов, которые могут оказаться причиной проблемы. Теперь по именам файлов нужно определить, к каким драйверам и системным компонентам они относятся. Для этого можно воспользоваться утилитой sigcheck от Sysinternals.
Утилита возвращает имя драйвера, его свойства и информацию о версии.
Теперь можно попытаться удалить/обновить/переустановить проблемный драйвер или службу.
Если утечка памяти привела к BSOD, вы можете определить проблемный драйвер по файл дампа памяти.
Данная инструкция применима как для Windows Server 2019/2016/2012R2, так и для клиентских Windows 10, 8.1.
Как исправить невыгружаемый пул Windows 10
Вот спустя время решил себе обновить компьютер, собрал, установил новую Windows 10. И горя не знал. Но заметил что он очень тормозит, после того как открыл диспетчер задач, увидел что невыгружаемый пул памяти постоянно увеличивается, и оперативная память не освобождается. Каждый раз чтобы выгрузить память с невыгружаемого пула приходилось выполнять перезагрузку компьютера.
В этой статье я Вам покажу несколько способов как избавится от проблемы с невыгружаемым пулом памяти. Разберемся что такое невыгружаемый пул и по каким причинам пользователи с ней встречаются. Решил написать статью так как сам часто встречаюсь после каждой чистой установки операционной системы Windows 10.
Что такое невыгружаемый пул памяти
На скриншоте видно где можно посмотреть на невыгружаемый пул, и увидеть явную утечку памяти. Не важно сколько в Вас памяти, все с временем уходит в невыгружаемый пул. При этом нормальные значения невыгружаемого пула располагается в районе до двухсот мегабайт. Именно поэтому после обнаружения утечки памяти рекомендуем воспользоваться нашими способами. Обычное добавление планок оперативной памяти немного отдаляет, но все же не решает проблему.
Эта проблема появляется при активном использовании Интернета с включенным управлением полосой пропускания, происходит утечка памяти на материнских платах с сетевой картой от Killer. Не важно интегрированная это или дискретная сетевая карта. Драйвер netio.sys может забрать хоть всю оперативную память в системе. После перезагрузки компьютера по новой все происходило.
Возможно несколько вариантов устранения проблемы. Я же использовал первый или второй способ для отключения утечки памяти. Но не стоит исключать вариант обновления драйверов сетевой карты. Так как сейчас производители уже выпустили обновленные версии драйверов, автоматически исправляющие ошибки с невыгружаемым пулом памяти Windows 10.
Как исправить невыгружаемый пул оперативной памяти
Службы
Первый способ заключается в отключении службы мониторинга сетевой активности (Windows Network Data Usage Monitoring Driver) в Windows 10. Выполнением буквально одной команды проблема с невыгружаемым пулом памяти будет полностью решена.
Реестр
Перед внесением изменений в реестр рекомендуется создать резервную копию реестра Windows 10. Это предоставит возможность в любой момент при необходимости восстановить любые изменения в реестре.
Для применения изменений выполните перезагрузку компьютера. После включения компьютера память будет освобождаться в автоматическом режиме. Больше утечек оперативной памяти из-за не будет. Смотрите также инструкцию: Как очистить оперативную память на Windows 10.
Драйвера
В некоторых случаях исправить утечки оперативной памяти помогает настройка программного обеспечения к сетевой карте. При этом пользователь теряет весь функционал программы Killer Network Manager.
Сейчас уже с уверенностью можно сказать, что достаточно будет просто обновить драйвера производителя. Сегодня вместо программы Killer Network Manager пользователи получают обновленное средство управления Killer Control Center. В котором разработчики уже решили предыдущие ошибки и проблемы пользователей.
Как на меня самый удобный это первый способ, так как невыгружаемый пул памяти исчезает после отключения всего одной службы. Эта проблема актуальна и для пользователей предыдущих операционных систем.
В этой статье мы рассмотрели как исправить невыгружаемый пул Windows 10 и собственно разобрались что такое невыгружаемый пул памяти. Пишите в комментарии встречались ли Вы с этой проблемой, и как с ней боролись. Надеюсь эта статья была для Вас полезной.
Невыгружаемый пул в Windows 10
Сообщение о нарушении
Ответы (13)
* Попробуйте выбрать меньший номер страницы.
* Введите только числа.
* Попробуйте выбрать меньший номер страницы.
* Введите только числа.
Сообщение о нарушении
Был ли этот ответ полезным?
К сожалению, это не помогло.
Отлично! Благодарим за отзыв.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
У меня на нескольких ПК значения такого же порядка как у вас на картинке. Почему вы решили что у вас какая то аномалия?
В любом случае проблемы такого рода наблюдались при установленном uTorrent. У вас он имеется?
Сообщение о нарушении
Был ли этот ответ полезным?
К сожалению, это не помогло.
Отлично! Благодарим за отзыв.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
Сообщение о нарушении
Был ли этот ответ полезным?
К сожалению, это не помогло.
Отлично! Благодарим за отзыв.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
Здравствуйте, в течении дня у меня забивается невыгружаемый пул, аж под 1.45 гб как исправить проблему?
см на скрине. сетевой адаптер у меня так же вроде обновлена.. см на скрине, в чём же проблема..
Сообщение о нарушении
Был ли этот ответ полезным?
К сожалению, это не помогло.
Отлично! Благодарим за отзыв.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
Здравствуйте, в течении дня у меня забивается невыгружаемый пул, аж под 1.45 гб как исправить проблему?
см на скрине. сетевой адаптер у меня так же вроде обновлена.. см на скрине, в чём же проблема..
Помогло, но это временное решение
она так же повышается и повышается..
Сообщение о нарушении
Был ли этот ответ полезным?
К сожалению, это не помогло.
Отлично! Благодарим за отзыв.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
Сообщение о нарушении
Был ли этот ответ полезным?
К сожалению, это не помогло.
Отлично! Благодарим за отзыв.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
то есть, по вашему это нормальная аномалия то что невыгружаемый пул доходит до 1.45 гб
Как я сказал у меня примерно те же значения, на нескольких ПК примерно с тем же объемом памяти:
Используется где то 7% памяти, я для того и покупал память чтоб она использовалась.
Так почему вы решили что это проблема? Сколько там по вашему должно быть? И на чем это основано?
Сообщение о нарушении
Был ли этот ответ полезным?
К сожалению, это не помогло.
Отлично! Благодарим за отзыв.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
Сообщение о нарушении
Был ли этот ответ полезным?
К сожалению, это не помогло.
Отлично! Благодарим за отзыв.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв, он поможет улучшить наш сайт.
Насколько Вы удовлетворены этим ответом?
Благодарим за отзыв.
если бы там было хотя бы, 200 невыгружаемого пула
то я бы и не писал здесь.
я уже весь форум просмотрел и не чего не помогает, я так полагаю что утечка памяти либо что это?
Утечки памяти в драйверах всегда возможны. Но для начала надо определится что взять за точку отсчета. И желательно чтоб это было обосновано, а не взятое с потолка число которое вам почему то кажется большим.
Далее, утечка это совсем не использование большого объема памяти как многие считают. Для того чтоб определить есть у вас утечка или нет запустите perfmon и снимите график невыгружаемого пула например за 24 часа. Поместите его в форум и я без труда скажи вам есть утечка или нет.
Невыгружаемый пул занял почти всю ОЗУ в Windows 10
В некоторых случаях, на компьютерах и серверах Windows могут возникать проблемы с исчерпанием свободной памяти, вызванной утечкой некого системного драйвера, хранящего свои данные в невыгружаемом пуле памяти системы. Невыгружаемый пул памяти (Non-paged memory) – это данные в оперативной памяти компьютера, используемые ядром и драйверами операционной системой, которая никогда не выгружается на диск (в своп/ файл подкачки), т.е. всегда находится в физической памяти.
Текущий размер невыгружаемого пула памяти можно увидеть в диспетчере задач на вкладке Perfomance (Производительность) в разделе Memory (Память). На скриншоте ниже видно, что практически вся память на сервере занята, и большая часть ее относится к невыгружаемому пуле 4,2 Гб (Non-paged pool / Невыгружаемый пул). В нормальном состоянии размер невыгружаемого пула редко превышает 200-400 Мб. Это как правило свидетельствует о наличии утечки памяти в каком-то системном компоненте или драйвере.
При таком исчерпании памяти на сервере, в журнале событий могут возникать сообщения вида:
The server was unable to allocate from the system Non-Paged pool because the pool was empty
В подавляющем большинстве случаев причиной описанной утечки памяти является проблема со сторонними драйверами, установленными в системе. Как правило, это сетевые драйвера. Обратите внимание, как ведет себя пул при скачивании больших файлов (скорее всего он при этом быстро растет вплоть до 128 Гб или 75% физической памяти в x64 системах). Для очистки пула помогает только перезагрузка, и, если для домашнего компьютера это еще может быть приемлемо, на круглосуточно работающем сервере желательно найти нормальное решение.
Установка последних версий драйверов сетевых адаптеров
Попробуйте скачать и установить последние версии драйверов ваших сетевых адаптеров с сайта производителя.
В том случае, если у вас включено автоматическое обновление драйверов, убедитесь не начались ли проблемы после установки новых драйверов. Попробуйте откатить версию драйвера на более старую и проверить, воспроизводится ли проблема. Если проблема решилась, отключите автообновление драйверов.
Отключение драйвера мониторинга сетевой активности Windows
Достаточно часто причиной утечки памяти в невыгружаемый пул является несовместимость драйвера мониторинга сетевой активности (Network Data Usage — NDU) с драйверами сетевого адаптера компьютера. Данный сервис можно отключить без особых потерей функционала Windows.
Службу можно остановить командной:
sc config NDU start= disabled
Либо через реестр
После внесения изменений нужно перезагрузить компьютер
Отключение роли Hyper-V
В некоторых случаях утеску памяти в невыгружаемый пул провоцирует установленная роль Hyper-V. В том случае, если она не нужна, рекомендуем отключить ее.
Используем утилиту Poolmon для поиска драйвера, вызвавшего утечку памяти
В том случае, если описанные выше способы не помогли, можно попытаться выяснить, какой конкретно драйвер вызвал утечку памяти в невыгружаемый пул.
Для этого нам понадобится консольная утилита Poolmoon.exe, входящая в комплект разработки Windows Driver Kit (WDK). С сайта MSFT скачайте и установите WDK для вашей версии Windows и запустите утилиту Poolmon.exe (в WDK для Windows 10 утилита находится в каталоге C:\Program Files (x86)\Windows Kits\10\Tools\.
После запуска утилиты нажмите клавиши P. Во втором столбце останутся теги процессы, которые используют невыгружаемую память (атрибут Nonp), затем, нажав клавишу B, выполним сортировку по столбцу Bytes.
В нашем примере видно, что больше всего RAM в невыгружаемом пуле используют драйвера с тегами Nr22, ConT и smNp.
Найти конкретные файлы драйверов, связанные с данными процессами можно командами:
findstr /m /l /s Nr22 %Systemroot%\System32\drivers\*.sys
findstr /m /l /s ConT %Systemroot%\System32\drivers\*.sys
findstr /m /l /s smNp %Systemroot%\System32\drivers\*.sys
Таким образом, мы получили список файлов драйверов, которые могут оказаться причиной проблемы. Теперь по именам файлов нужно определить, к каким драйверам и системным компонентам они относятся. Для этого можно воспользоваться утилитой sigcheck от Sysinternals.
Утилита возвращает имя, описание и версию драйвера. Теперь можно попытаться удалить/обновить/переустановить проблемный драйвер или службу. Данная инструкция применима как для Windows Server 2008 — 2016, так и для клиентских Windows 10, 8 и 7.