Високе використання пам'яті Windows 10 (невідома причина)


78

Кілька днів тому я оновив свій ПК до Windows 10. Однак після деякого використання мій ПК почав уповільнюватися, доки його неможливо було використовувати - це було пов’язано з високим рівнем використання пам'яті. Після перезавантаження все прийшло в норму (загальне використання близько 25% 8 Гб оперативної пам’яті). Однак протягом декількох годин використання пам'ять накопичується знову до 70%, а якщо не перезапускається, то далі йде до 100%, а пізніше навіть застигає. Диспетчер завдань не дуже допомагає, оскільки не показує всі процеси (додані скріншоти нижче). Також спробував RAMMap, але він видає помилку: "Оновлення бази даних про помилки". Я спробував Гуглінг це питання, але без особливого успіху.

Я не знаю багато про ПК, але, можливо, хтось із вас знає цю проблему, або міг би допомогти з’ясувати для чого використовується моя ОЗУ.

Використання ОЗУ 1

Використання ОЗУ 2


@AR надати xperf слід. Мені потрібно переглянути стеки викликів, щоб побачити більше.
magicandre1981

Я знаю, що ця тема вирішена - але гарним першим кроком є ​​відключення гіпер-v. це був винуватець у моєму випадку.
гіперпошта

Що було запущено Hyper-V?
rogerdpack

Відповіді:


117

У вас є витік пам'яті, викликаний водієм. Подивіться на високе значення пам'яті ядра, що не використовується на сторінці. У вашому випадку це більше 3,7 ГБ. Ви можете використовувати poolmon, щоб побачити, який драйвер викликає високе використання.

Встановіть Windows WDK , запустіть poolmon, відсортуйте його за Pтипом пулу, щоб тест, Bякий використовує більшу частину пам’яті , розміщувався вгорі та після байтів без подкачки . Запустіть poolmon, перейшовши до папки, де встановлено WDK, перейдіть до Інструменти (або C:\Program Files (x86)\Windows Kits\10\Tools\x64) та натисніть poolmon.exe.

Тепер подивіться, який тег пулу використовує найбільше пам'яті, як показано тут:

введіть тут опис зображення

Тепер відкрийте cmd-рядок і запустіть команду findstr. Для цього відкрийте підказку cmd і введіть cd C:\Windows\System32\drivers. Потім введіть findstr /s __ *.*, де __ - тег (найбільше ліве ім'я в басейні). Зробіть це, щоб побачити, який драйвер використовує цей тег:

введіть тут опис зображення

Тепер перейдіть до папки драйверів ( C:\Windows\System32\drivers) і клацніть правою кнопкою миші відповідний драйвер (intmsd.sys у наведеному вище прикладі зображення). Клацніть Властивості, перейдіть на вкладку "Деталі", щоб знайти ім'я продукту. Шукайте оновлення для цього продукту.

Якщо тег пулу показує лише драйвери Windows або вказаний у pooltag.txt ( "C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\triage\pooltag.txt")

у вас є xperf, щоб простежити, що викликає використання . Встановіть WPT з Windows SDK , відкрийте cmd.exe як адміністратор і запустіть це:

xperf -on PROC_THREAD + LOADER + POOL -прогулянка PoolAlloc + PoolFree + PoolAllocSession + PoolFreeSession -BufferSize 2048 -MaxFile 1024 -FileMode Circular && timeout -1 && xperf -d C: \ pool.etl

захоплюють 30 -60-ті рости. Відкрийте ETL за допомогою WPA.exe, додайте графіки пулу до області аналізу.

Поставте стовпчик pooltag на перше місце і додайте стовпчик стека. Тепер завантажте символи всередині WPA.exe і розгорніть стек тегу, який ви бачили в poolmon.

введіть тут опис зображення

Тепер знайдіть інших сторонніх драйверів, яких ви можете бачити в стеці. Тут Threтег (Thread) використовується AVKCl.exe з G-Data. Шукайте оновлення драйверів / програм, щоб виправити це.


Користувач Христо Христов надав слід з високим рівнем FMfnвикористання під час розпакування файлів:

введіть тут опис зображення

Тег використовується драйвером, WiseFs64.sysякий входить до програми "Hise Folder Hider". Його видалення виправляє витік.


Користувач Самуїл Дічев надав слід з високим рівнем використання FMicта Irpвикористання

введіть тут опис зображення

введіть тут опис зображення

Теги використовуються програмою Razor Cortex .

У зразку користувача chr0n0ss використання FMicта Irpвикористання викликано F-Secure Antivirus Suite:

введіть тут опис зображення

Видалення його та використання Windows Defender виправили цю проблему.



4
Нічого, дякую за таку швидку відповідь на питання, що я думав, я ніколи не знайду його :) здається, що мережеві драйвери викликали проблему і після оновлення використання пам'яті здається нормальним. Знову дякую! :)
Лукас

1
Це мені нагадує допис у блозі Марка Русиновича.
Нд

1
Я думаю, що надане вами посилання для завантаження WDK призначене для Win 8. Версія для Win 10 тут: msdn.microsoft.com/en-us/windows/hardware/dn913721.aspx
Тревіс Бемроуз

1
Findstr команда нічого , що могло б допомогти мені не повернути pasteboard.co/2HmQZYbN.png
Loenix

1
NDbf був високим, тоді я виявив, що це sumsungrapiddskfltr чи щось таке, я його вимкнув, він працює добре зараз.
Сурай Джайн

26

цей хлопець може мати мережеву карту фірми Killer Networking (раніше Bigfoot networking).

Божеволіла, намагаючись з’ясувати, чому у мене масове витоку пам’яті, і навіть я зробив повністю чисту установку, і відразу після встановлення у мене витік пам'яті. Звичайно, я встановив свої мережеві драйвери та драйвери відеокарт, але це було все.

Я шукав Google ... Знайшов цей потік, у якому говорив, що це його драйвер мережі, а потім гугл "витік пам'яті вбивці", і побачив хіти для цього, і виявив, що це саме додаток-убивця, а не лише в Windows 10.

Тепер я золотий ... Тож якщо хтось інший має цю проблему, і у них є одна з безлічі ігрових дощок або ноутбуків, у яких є NIC-вбивця, ви, ймовірно, можете просто відключити програму-вбивцю від запуску. Але те, що я зробив, було повністю видалити наданий драйвер ASROCK, а потім встановити останній пакет лише для драйверів з офіційного сайту вбивць. Це менше ~ 30 Мб завантажити. Якщо ваше завантаження ближче до або більше 100 Мб, то ви отримали неправильну.

Ви втратите все, через що вбивця виділяється (це програмне забезпечення QoS), але саме для цього потрібен хороший маршрутизатор ... Тим більше, що програма-вбивця обробляє лише QoS програми, що працюють на вашому ПК, і нічого не робить для Ваша мережа в цілому.


1
Краще було б підтвердити, що вони зробили. Як тільки вони підтвердили це, тоді подайте відповідь. Навіть якщо ви зробили це, ця відповідь не пояснює, як вирішити проблему.
Рамхаунд

2
велике спасибі за вашу відповідь. це врятувало мені багато часу. У мене була така ж проблема. Прочитавши вашу відповідь, я просто видалив додаток Killer, а потім встановив лише мережеві драйвери. Зараз моє вікно 10 працює чудово.
Буджу

1
Ти врятував мене, дякую !. Я видалив увесь комплект Killer і встановив лише драйвери. Зараз при запуску моє використання оперативної пам’яті становить 25% (2 Гб) проти 50% ~ 60% раніше.
nikoskip

Чим ти так сильно !!!
srchulo

1

Отримана відповідь magicandre1981 - це правильна відповідь на цю проблему, якщо використання оперативної пам'яті продовжує зростати до 100%, то, швидше за все, є витік пам'яті.

Однак якщо ви зайшли на цю сторінку, оскільки об'єм пам'яті Windows 10 великий, але стабільний (наприклад, в діапазоні 60% -90%), ви, мабуть, не матимете проблем. Windows 10 використовує оперативну пам’ять ефективніше, ніж попередні версії. Це пов’язано з тим, що невикористана ОЗУ витрачається на марно пам'ять .

Сучасні операційні системи давно поміняли нечасто використовувані дані пам'яті на файл сторінки на жорсткому диску, щоб звільнити оперативну пам’ять для більш часто потрібних даних пам'яті. (У моїй системі Win 10 є 8 Гб оперативної пам’яті та файл 12 ГБ сторінок.) Однак повернення цих даних з диска повільно, і Windows 10 буде стискати нечасто доступну пам'ять і зберігати її в системному процесі (в оперативній пам’яті). Швидше розпакувати ці дані, ніж отримати їх із жорсткого диска (навіть із SSD). Тільки тому, що ваша ОЗУ в основному повна, це не означає, що ви не зможете запускати більше речей, якщо потрібно більше оперативної пам’яті, то Win 10 перемістить частину цієї стислої пам’яті у файл сторінки, щоб звільнити ОЗУ для нових програм.

Якщо ви постійно знаходите, що ваш системний процес використовує більше 1 Гб оперативної пам’яті (як я), ніж у вас, ймовірно, відкрито занадто багато вкладок браузера (як у мене). Розширення типу OneTab може допомогти.


ні, кеш відображається у режимі очікування / кешований у Taskmgr. Стиснення Win10 Taskmgr показано як використання робочого набору в процесі SYSTEM. Я вже пояснив це тут: superuser.com/a/952142/174557
magicandre1981

@ magicandre1981 Що ти кажеш "ні"? Я не бачу незгоди.
Тревіс Бемроуз

1
Я виявив, що Windows 10 все ще має на меті утримати обсяг пам'яті нижче 60%, і все більше, ніж це починається на сторінці. Ми отримуємо сповіщення на 1000+ пристроях про те, коли використання пам'яті перевищує 80%, а ПК справді починає сповільнюватися. Windows 10 може керувати нею краще, але також краще тримати велику частину пам'яті вільною, готовою до використання інших процесів при необхідності, інакше доведеться записати на диск перед тим, як звільнити повільну пам'ять.
користувач2924019
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.