Невыгружаемый пул занимает память Windows 10 — решение

Невыгружаемый пул — утечка памяти в Windows 10Одна из распространенных проблем пользователей Windows 10, особенно с сетевыми картами Killer Network (Ethernet и Wireless)— заполняющаяся оперативная память при работе в сети. Обратить на это внимание можно в диспетчере задач на вкладке «Производительность», выбрав RAM. При этом, заполняется невыгружаемый пул памяти.

Проблема в большинстве случаев вызвана неправильной работой сетевых драйверов в сочетании с драйверами монитора использования сети Windows 10 (Network Data Usage, NDU) и достаточно просто решается, о чем и пойдет речь в этой инструкции. В некоторых случаях, причиной утечек памяти могут быть и другие драйверы оборудования. Близкий по теме материал: Что такое память Кэшировано в Windows 10 и как очистить кэшированную память.

Исправление утечки памяти и заполнения невыгружаемого пула при работе в сети

Наиболее распространенной ситуацией является, когда невыгружаемый пул RAM Windows 10 заполняется при работе в Интернете. Например, легко заметить, как он растет при скачивании большого файла и после этого не очищается.

Если описанное — ваш случай, то исправить ситуацию и очистить невыгружаемый пул памяти можно следующим образом.

  1. Зайдите в редактор реестра (нажмите клавиши Win+R на клавиатуре, введите regedit и нажмите Enter).
  2. Перейдите к разделу
    HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\Ndu\
  3. Дважды нажмите по параметру с именем «Start» в правой части редактора реестра и задайте значение 4 для него, для отключения монитора использования сети. Исправление проблемы с невыгружаемым пулом в реестре Windows 10
  4. Закройте редактор реестра.

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

Если шаги, описанные выше, не помогли, попробуйте следующее:

  • Если драйвер сетевой карты и (или) беспроводного адаптера был установлен с официального сайта производителя, попробуйте удалить его и дать Windows 10 установить стандартные драйверы.
  • Если драйвер был автоматически установлен Windows или был предустановлен производителем (и система после этого не менялась), попробуйте скачать и установить последнюю версию драйвера с официального сайта производителя ноутбука или материнской платы (если это ПК).

Заполняемый невыгружаемый пул оперативной памяти в Windows 10 не всегда бывает вызван драйверами именно сетевой карты (хотя чаще всего) и если действия с драйверами сетевых адаптеров и NDU не приносят результата, можно прибегнуть к следующим шагам:

  1. Установка всех оригинальных драйверов от производителя на ваше оборудование (особенно если на данный момент времени у вас установлены драйверы, автоматически установленные Windows 10).
  2. Использование утилиты Poolmon из состава Microsoft WDK для определения драйвера, вызывающего утечку памяти.

Как узнать, какой драйвер вызывает утечку памяти в Windows 10 с помощью Poolmon

Невыгружаемый пул в диспетчере задач Windows 10

Выяснить конкретные драйверы, приводящие к тому, что невыгружаемый пул памяти растет можно с помощью инструмента Poolmoon, входящим в состав Windows Driver Kit (WDK), скачать который можно с официального сайта Майкрософт.

  1. Загрузите WDK для вашей версии Windows 10 (не используйте шаги на предлагаемой странице, относящиеся к установке Windows SDK или Visual Studio, просто найдите пункт «Установите WDK для Windows 10» на странице и запустите установку) с сайта https://developer.microsoft.com/ru-ru/windows/hardware/windows-driver-kit.
  2. После установки, зайдите в папку с WDK и запустите утилиту Poolmon.exe (по умолчанию утилиты находятся в C:\ Program Files (x86)\Windows Kits\ 10\ Tools\ ).
  3. Нажмите латинскую клавишу P (так, чтобы второй столбец содержал только значения Nonp), затем — B (это оставит в списке только записи, использующие невыгружаемый пул и отсортирует их по количеству занимаемого пространства в памяти, т.е. по столбцу Bytes). Невыгружаемый пул в утилите Poolmon
  4. Обратите внимание на значение столбца Tag для занимающей наибольшее количество байт записи.
  5. Откройте командную строку и введите команду findstr /m /l /s значение_столбца_tag C:\Windows\System32\drivers\*.sys Поиск драйвера, вызывающего утечку памяти
  6. Вы получите список файлов драйверов, которые могут оказаться причиной проблемы.

Дальнейший путь — выяснить по именам файлов драйверов (с помощью Google, например), к какому оборудованию они относятся и пробовать установить, удалить или откатить в зависимости от ситуации.

Комментарии (25) к Невыгружаемый пул занимает память Windows 10 — решение

  • Валерий

    Здравствуйте. А если не найден HKEY_LOCAL_MACHINE\ SYSTEM\ ControlSet001\ Services ?

    Ответить

    • Dmitry

      Не может так быть.. должен быть в наличии. Вы вручную пройдите по этому пути (папки слева).
      Не найден он мог быть, если вы ввели в верхнюю адресную строку вот так, с пробелами, как у меня в статье (пробелы у меня проставлены с той целью, чтобы не получалось «слишком длинное слово», которое выходит за границы сайта).

      Ответить

  • Кирилл

    А как оптимизировать потребление кэшем?
    А то 5.1 ГБ (!!!) выделяет, при моих 4 гб ОЗУ.

    Ответить

  • Leo

    Уже 4 года как при скачивании больших файлов помогает только перезагрузка.
    Ни думал ни гадал что виновником может быть киллер.
    Вину полноценно скидывал на торент клиенты, хотя все настройки включал, а нужно было просто взяться за эту проблему вплотную, потому что если бы виноват был торрент то при его убийстве в диспетчере должна была освобождаться оперативная память, чего не происходило, дело то в не выгружаемом лупе…
    Стало проще жить!
    Хотя есть и положительный момент в виде 4 планок оперативной памяти
    в целом на 16 гигабайт, долго не придётся думать об этом, да и при рендере она используется!
    Огромное спасибо!

    Ответить

  • Шкет

    После обновления до creators update началась эта дичь. доходило до того что комп вис намертво из за забитой оперативки (при скачивании файлов более 15 ГБ) данный совет помог избавиться от проблемы.

    Ответить

  • Юрий

    вообще запутался с poolmon и далее с командной строкой. непонятно по каким значениям выбрать из столбца Tag запись, если на скриншоте показано явно не с наибольшим количеством байтов. а в командной открылось C/users__ и что туда вписывать? может сделаете для чайников руководство? полуспециалисты и так разберутся

    Ответить

  • Василий

    Спасибо… Помог первый вариант. Сетевая карта Killer E2200.

    Ответить

  • Сергей

    Данную проблему удалось решить полным форматированием жёсткого диска (с;д), при переустановке системы, предварительно сохранив нужные файлы в облаке. До этого форматировался и переустанавливалась система на диск С и проблема никуда не девалась.

    Ответить

  • Дмитрий

    с реестром не прокатило.
    переустановка дров помогла.
    Killer E2200

    Ответить

  • Артём

    Здравствуйте. Помогите мне пожалуйста. У меня было забито 40% озу из 8 -3,5, на голом компе с виндой, я решил обновить Килер, обновил, всё также, решил его удалить через его же программу по удалению и хоп, утечки нету в пределах нормы. Что мне делать ?

    Ответить

    • Dmitry

      Здравствуйте.
      Я что-то не совсем понял… после удаления утечка прекратилась или еще до удаления? В первом случае смотреть другой драйвер, во втором — расслабиться.

      Ответить

  • Александр

    я год мучился с этой проблемой, пасибо человече!!!

    Ответить

  • Dmitry

    Недавно началась эта беда с оперативкой… Дошел до шага с «Откройте командную строку и введите команду findstr /m /l /s arl2_tag C:\Windows\System32\drivers\*.sys» в мое случае arl2, но после Enter окно с командной строкой просто пропадает : (

    Ответить

    • Dmitry

      Здравствуйте. По описанию похоже, что вы не командную строку открываете и вводите туда команду, а открываете окошко «выполнить» и туда вводите команду….

      Ответить

      • Andrey

        Здравствуйте Дмитрий.
        Ввожу в командную строку команду:
        findstr /m /l /s arl2_tag C:\Windows\System32\drivers\*.sys
        Нажимаю: Enter. И ничего не происходит. Пробовал разное значение столбца tag, пробовал вводить команду в PowerShell, ничего. Что-то я делаю явно не так. (Windows 10, сборка 1809, x64)

        Как Вам отправить скриншот?

        Разобрался!
        Это те, которые остались синенькие, а не те, которые выделились беленьким.

        Ответить

  • Stanislav

    Большое спасибо, помогло

    Ответить

  • Vitalij

    В моем случае оперативную память загружала включенная функция Rapid SSD диска Самсунг но это нормально,

    Ответить

  • Pavel

    Помог первый вариант. Сетевая карта тоже Killer™ E2200 и как я прожил с этим 4 года?) Спасибо еще раз!

    Ответить

  • Oleksandr

    Ничего не понятно, что вписывать в командной строке перебрал все варианты тишина

    Ответить

  • Евгений

    у меня на виндус 7 такая проблема не давно вылезла я просто вытащил плашки почистил их и вставил обратно и всё больше нет этой проблемы

    Ответить

  • Евгений

    Приветствую! На пятом шаге, где нужно использовать командную строку, просто ничего не работает… Ввожу как в примере показано, только меняю значение на взятое из программы, и ничего в ответ не выводится. Пробовал от имени админа и в папке с драйверами — не помогло.

    C:\Windows\System32\drivers>findstr /m /l /s Py28 *.sys

    *пусто, ничего в ответе, командная строка предлагает ввести новую команду*

    Что делать?

    Ответить

  • Тимур

    БОЖЕ МОЙ, спасибо вам большое!

    Ответить

  • Макс

    Перепробовал всё, не помогло! невыгружаемый пул не опускался ниже 1.4гига! win10 стоит ssd 1T Удалил samsung magician невыгружаемый пул 134 мб.

    Ответить

    • Dmitry

      Может, у вас там просто «ускорение SSD» было включено (забыл, как у самсунга называется опция) — оно как раз использует оперативку

      Ответить

  • Timur

    Нет папки Ndu, что делать?

    Ответить

Оставить комментарий

Интересное
Список инструкций Windows 11 Windows 10 Подписаться