Увеличение использования памяти без какого-либо процесса

860
Bodeo

У меня возникли некоторые проблемы с использованием памяти в течение нескольких дней (возможно, с момента последнего обновления Windows, которое я сделал, если я правильно помню), когда моя память постепенно заполнялась до 16 ГБ в течение дня.

Обычно он запускается с использованием 1,5 ГБ / 16 ГБ, а затем увеличивается примерно на 1 ГБ в час, чтобы получить некоторые ненормальные вещи, такие как 14 ГБ, используемые через день, после чего мне приходится перезагружаться, чтобы «очистить» память.

Я уже попробовал несколько вещей, чтобы попытаться найти проблему, но я не могу найти причину этого, вот дополнительная информация:

Poolmoon, который, кажется, показывает, что «Tag», ответственный за увеличение использования памяти, - это Toke и Proc (MmSt и CM31 остаются около 2 ГБ весь день):

Увеличение использования памяти без какого-либо процесса

Использование памяти RamMap:

Увеличение использования памяти без какого-либо процесса

Вкладка процессов диспетчера задач:

Увеличение использования памяти без какого-либо процесса

Вкладка «Память» диспетчера задач:

Увеличение использования памяти без какого-либо процесса

0
Пожалуйста, попробуйте остановить или отключить службу wuauserv и посмотреть, поможет ли это. (win + r -> services.msc -> Центр обновления Windows) Andre 9 лет назад 0
Краткое пояснение к моему предыдущему комментарию: иногда Windows Update загружает вашу оперативную память. Я недавно видел это на машине Win7 моей компании. wuauserv по умолчанию запускается с задержкой, что объясняет, почему ваш компьютер вначале работает нормально. Как только вы остановите эту службу (вы можете сделать это также из диспетчера задач), ваша RAM должна быть освобождена. Для Win7 было исправление, не уверенное в Win8 / 10. Andre 9 лет назад 0
Спасибо за ответы, но wuauserv (служба Windows Update) был уже остановлен, и его тип запуска был "Ручной" Bodeo 9 лет назад 0
Вы обновили какие-либо драйверы в последнее время? Spokey 9 лет назад 0
Большинство размещенных вами дисплеев не указывают на проблему. Я вижу 5,5 ГБ в использовании, 326 МБ в невыгружаемом пуле. (Постраничный пул не является постоянным использованием; он не считается.) Хорошо ли вы это использовали, пока не достигли всех 16 ГБ «в работе»? Увеличивается ли «различие» объектов (процессов) «Proc»? Если это так, то это проблема - что-то создает процессы, процессы выходят, но (скорее всего) создатель никогда не закрывает дескриптор, поэтому объект процесса никогда не освобождается. Давайте посмотрим на диспетчер задач для всех процессов и отсортируем по столбцу Handles. Обозреватель процессов, конечно, тоже может это показать. Jamie Hanrahan 9 лет назад 0
@JamieHanrahan да, действительно, он был на 5,5 ГБ в использовании и задолго до 16 ГБ. Я опубликую poolmon через несколько часов, как только использование памяти вернется к 10 ГБ + без каких-либо процессов для сравнения обоих снимков экрана, но я почти уверен, что единственным «тегом», который бесконечно увеличивается, является «Proc» (в настоящее время на 1 ГБ больше, чем час). назад без каких-либо дополнительных процессов открыт). Спасибо ! Bodeo 9 лет назад 0
Пожалуйста, НЕ игнорируйте мой запрос на отображение процессов диспетчера задач или Process Explorer, отсортированных по столбцу «Ручки» в любом случае. Благодарю. Jamie Hanrahan 9 лет назад 0
@JamieHanrahan На самом деле нашел столбец «Ручки» на другой вкладке, здесь приведено использование 6,1 ГБ с помощью «Ручек» http://i.imgur.com/OQA5DGE.png / здесь с использованием «Рабочего набора» http://i.imgur.com/8snYX4t.png Bodeo 9 лет назад 0
Гектометр Там нет ничего необычного. Попробуйте трассировку WPT в соответствии с рекомендациями yobbo, но найдите тег «proc», а не «toke». Другая идея заключается в том, чтобы включить аудит создания процессов в групповой политике (при условии, что ваша версия Windows имеет gpedit). Jamie Hanrahan 9 лет назад 0
@JamieHanrahan Команда findstr действительно дает мне слишком много файлов .sys (~ 50-100), и я не уверен, как интерпретировать результаты, предоставленные мне WPT: http://i.imgur.com/mGsk3ls. png, поскольку в столбце «Размер» отображаются только 224 МБ, используемые для тега Proc, при этом в списке указаны только cmd.exe, RzSurround и некоторые специфичные для ядра библиотеки DLL. Еще раз спасибо ! (Использование памяти теперь составляет 7,5 ГБ без процесса, вот обновленный poolmon: http://i.imgur.com/8TRN2QF.png) Bodeo 9 лет назад 0
Попробуем найти способ проверить, что такое Razer Surround, увидев это: https://www.reddit.com/r/razer/comments/2pqqe8/razer_surround_causing_huge_memory_usage/ Bodeo 9 лет назад 0
Очень большой метафайл: (http://blogs.technet.com/b/mspfe/archive/2012/12/06/lots-of-ram-but-no-available-memory.aspx) "Что вы ищете это то, что [...] просит [...] просматривать огромное количество файлов и постоянно обновлять эту информацию, повторяя действие снова и снова ». Yorik 9 лет назад 0
Поправьте меня, если я ошибаюсь, но я думаю, что Battlenet (по умолчанию) использует ваш клиент в качестве торрент-провайдера для распространения обновлений для The World Yorik 9 лет назад 0

3 ответа на вопрос

1
magicandre1981

The memory usage doesn't come from a too large pool usage (althoug 800 is still a bit to high). It comes from 1.6GB of Page Table and a bit to high NTFS metadata.

This is hard to debug. I tried it last year, but it never shows good result. You have to stop some tools until you find the one that causes it.

The Proc tag is used by RzSurround (sound driver?) and the CM31 to load registry hives.

Гектометр Тег Proc является _suppposed_ для объектов Process - см. Pooltag.txt. Если этот драйвер "RzSurround" использует его, они нарушают правила. Jamie Hanrahan 9 лет назад 0
0
yobbo

The "Toke" tag is the Intel Wi-fi driver, ensure you have the latest driver from the vendor.

To find the culprit driver that is leaking non paged pool memory, open cmd.exe and navigate to c:\windows\system32\drivers and run:

findstr /m /l /s Proc *.sys 

Which will probably output too many results as proc is a common driver pe phrase,

You could try a WPT trace as seen in: Windows 8 out of memory over time: Toke Paged consuming over 5GB

На моем рабочем столе много объектов «Toke» и нет драйвера Intel Wi-Fi. - На самом деле никакого WiFi нет. pooltags.txt показывает, что «Toke» - это токен доступа - вещь, связанная с процессами (и иногда потоками), которая определяет ваш идентификатор безопасности, идентификаторы вашей группы и т. д. Когда вы создаете процесс, он обычно наследует копию вашего собственного токена доступа. , Тот факт, что счетчики Proc и Toke очень близки к одному и тому же, согласуется. Конечно, поскольку токены находятся в _paged_ пуле, они не занимают постоянно ОЗУ (если только один не по глупости не удалил файл подкачки). Но объекты процесса делают. Jamie Hanrahan 9 лет назад 0
Спасибо за предложение, я копирую ответ, который я дал в другом комментарии: команда findstr действительно дает мне слишком много файлов .sys (~ 50-100), и я не уверен, как интерпретировать предоставленные мне результаты WPT: i.imgur.com/mGsk3ls.png, так как в столбце «Размер» отображаются только 224 МБ, используемые для тега Proc, в котором указаны только cmd.exe, RzSurround и некоторые специфичные для ядра библиотеки DLL. Bodeo 9 лет назад 0
@Bodeo - вывод списка в файл. Просмотрите список и исключите все файлы Microsoft. После этого просмотрите список и запретите Windows загружать файл при запуске (автозапуск) до тех пор, пока поведение не прекратится. Чрезвычайно маловероятно, учитывая количество людей, использующих Windows, ошибка, существующая в драйвере Microsoft. Ramhound 9 лет назад 0
0
Bodeo

На самом деле эта проблема была устранена путем простого удаления процесса объемного звучания Razer (звукового драйвера) после просмотра RzSurroundVADStreaming.dll в графике WPT.

Память стабильна после 20 часов безотказной работы около 2 ГБ.

Похожие вопросы