Що таке процес Vmmem у диспетчері завдань Windows? Ось як виправити його високе споживання ресурсів
Чи стикалися ви з процесом під назвою "Vmmem" у диспетчері завдань Windows? Чи споживає він занадто багато процесора, оперативної пам’яті та інших системних ресурсів, що вас хвилює? Це процес, який використовується Windows, щоб продемонструвати, скільки ресурсів споживають віртуальні машини.
Тому, якщо він показує занадто велике споживання процесора або оперативної пам’яті, винна ваша віртуальна машина. У цій статті ми докладніше розглянемо цей процес і покажемо, як можна зменшити споживання ресурсів.
Що робить процес Vmmem?
Відповідно до публікації Microsoft DevBlogs, Windows створює процес Vmmem для відображення ресурсів, які споживають віртуальні машини. Коли ви бачите, що цей процес споживає занадто багато ресурсів у диспетчері завдань, ваші віртуальні машини фактично використовують ці ресурси, що цей процес просто показує.
Як правило, ми бачимо, що цей процес виконується, коли ви активно запускаєте віртуальну машину в Hyper-V Manager або використовуєте WSL (підсистема Windows для Linux) для запуску бінарних виконуваних файлів Linux. Загалом, це не повинно перевантажувати ваші ресурси, але коли це відбувається, щось не так.
Ви також бачите високе споживання ресурсів у диспетчері завдань для цього процесу? Давайте подивимося, що ми можемо зробити, щоб це виправити.
Спочатку з’ясуйте причину проблеми
По-перше, визначте, яка віртуальна машина чи програма стоїть за великим споживанням ресурсів процесом Vmmem. Якщо ви використовуєте лише один менеджер віртуальної машини, ви вже виявили проблему. Однак, якщо ви одночасно запускаєте диспетчер віртуальних машин і WSL, вам потрібно буде визначити, яка програма спричиняє проблему.
Як ви можете визначити, що напружує ваші ресурси? Щоб з’ясувати це, найкращим підходом є спроба. Закрийте віртуальні машини в диспетчері Hyper-V і перевірте, чи допоможе це зменшити споживання ресурсів. Подібним чином ви можете вимкнути інструменти WSL і подивитися, який вплив вони мають.
Коли ми закриваємо віртуальну машину в Hyper-V Manager, процес Vmmem негайно зникає з диспетчера завдань, що означає, що цей процес більше не споживає жодних ресурсів. Навпаки, коли ми закриваємо інструменти Linux або WSL, процес Vmmem потрібен деякий час, щоб зникнути, тому зачекайте трохи, перш ніж оцінювати вплив його закриття.
Коли ви визначите головного винуватця, перегляньте наведені нижче інструкції, які пояснюють, як зменшити споживання ресурсів віртуальної машини в Hyper-V Manager і WSL.
Як зменшити споживання ресурсів віртуальними машинами в Hyper-V Manager
Якщо процес Vmmem показує високе споживання ресурсів у диспетчері завдань під час запуску віртуальних машин у диспетчері Hyper-V, спершу застосуйте такі попередні перевірки:
- Увімкніть і вимкніть віртуальні машини в Hyper-V Manager.
- Перезапустіть Hyper-V Manager після його закриття.
- Запустіть лише одну віртуальну машину в Hyper-V Manager, якщо у вас більше однієї.
- Якщо ви одночасно використовуєте інший клієнт віртуальної машини з Hyper-V Manager, закрийте його.
Якщо наведені вище перевірки не зменшують споживання ресурсів, що можна перевірити, подивившись, скільки ресурсів споживає процес Vmmem у диспетчері завдань, обмежте розподіл ресурсів віртуальної машини в диспетчері Hyper-V. Ось як:
-
Запустіть Hyper-V Manager.
-
Клацніть правою кнопкою миші свою віртуальну машину та виберіть Налаштування.
-
На лівій бічній панелі натисніть Пам’ять.
-
Встановіть максимальний обсяг оперативної пам’яті, який може використовувати віртуальна машина.
-
Зніміть прапорець «Увімкнути динамічну пам’ять» або обмежте динамічну оперативну пам’ять, яку віртуальна машина може використовувати там.
Так само ви можете змінити інші параметри, щоб обмежити використання віртуальної машини лише зазначеними ресурсами та не навантажувати комп’ютер. Якщо налаштування цих налаштувань не допомагає зменшити споживання ресурсів, ви можете відмовитися від Hyper-V Manager і використовувати інший менеджер віртуальної машини, наприклад VirtualBox або VMware.
Більшість сторонніх віртуальних менеджерів відображають споживання пам’яті в диспетчері завдань за допомогою процесів, відмінних від процесу Vmmem. VMWare, наприклад, використовує процес під назвою VMware-vmx.exe. Тому слідкуйте за ними, і якщо вони споживають забагато ресурсів, або обмежте розподіл пам’яті, або застосуйте виправлення, згадані для Hyper-V Manager.
Залежно від вашої збірки Windows (а її дуже легко перевірити у Windows 11 ), WSL може мати право використовувати від 50% до 80% вашої оперативної пам’яті, як пояснюється в документації Microsoft. Отже, ви можете уявити, наскільки ресурсоємним він може стати, що саме і намагається продемонструвати процес Vmmem.
Якщо запуск підсистеми Windows для Linux або певних інструментів Linux призводить до значного споживання ресурсів, як показано в процесі Vmmem, ви можете звільнити пам’ять і вирішити проблему, виконавши такі дії:
1 Перезапустіть WSL вручну
Один із найпростіших способів усунути високе споживання ресурсів інструментами WSL або Linux — просто перезапустити їх. Таким чином, вам слід вручну закрити всі інструменти Linux, які ви зараз відкрили, включаючи сам WSL.
Зачекайте хвилинку і подивіться, чи після цього процес Vmmem перестане показувати вам велике споживання ресурсів. Якщо це так, перезапустіть дистрибутиви WSL ще раз і перевірте, чи процес Vmmem поводиться так само. Якщо так, пропустіть друге виправлення та застосуйте третє.
Однак, якщо ви закриваєте WSL вручну, і він не зупиняє процес Vmmem у диспетчері завдань, ви повинні примусово вимкнути його. У наступному виправленні ми пояснимо, як це працює.
2 Примусово закрийте WSL і перезапустіть його
Щоб примусово закрити WSL, виконайте такі дії:
Після цього перезапустіть дистрибутиви WSL. Якщо перезапуск WSL не вирішує проблему, перейдіть до наступного виправлення.
3 Обмежте ресурси вручну для WSL
WSL також можна обмежити з точки зору ресурсів, які він використовує, щоб він не перевантажував вашу систему надмірними вимогами до ресурсів. Ви можете зробити це лише за допомогою WSL 2, який працює лише на збірках Windows, вищих за 19041. Перегляньте нашу статтю про те, як інсталювати WSL 2 у Windows, якщо ви цього ще не зробили.
Якщо ваша збірка Windows підтримує WSL 2 і ви її вже встановили, ви можете обмежити її ресурси, виконавши такі дії:
-
Запустіть командний рядок Windows від імені адміністратора.
-
Введіть «wsl –shutdown» і натисніть Enter.
-
Закрийте командний рядок Windows.
-
Відкрийте WSL.
-
Після заміни імені користувача введіть таку команду:
editor "$(wslpath "C:UsersYourUsername.wslconfig")" -
Натисніть Enter.
-
Введіть таку конфігурацію: [wsl2] memory=5GB (обмежте її залежно від розміру оперативної пам’яті)
-
Натисніть CTRL + X.
-
Натисніть «Y», коли буде запропоновано зберегти зміни.
-
Підтвердьте розташування, натиснувши Enter ще раз.
-
Повторіть кроки з першого по третій.
-
Виконайте таку команду після перезапуску WSL, щоб підтвердити, що ресурси успішно розподілено.
free -h --giga
За допомогою наведених вище кроків ви можете обмежити використання ресурсів WSL, щоб він не перевантажував ваш комп’ютер.
Чи можливо завершити процес Vmmem?
Диспетчер завдань не дозволяє закрити процес Vmmem, як звичайні завдання. Якщо ви спробуєте це зробити, ви зіткнетеся з помилкою. Щоб завершити процес Vmmem, вам потрібно закрити віртуальні машини та WSL або будь-який із його інструментів Linux.
Не дозволяйте віртуальним машинам споживати ваші ресурси
Поради, згадані в статті, повинні допомогти вам обмежити споживання ресурсів віртуальної машини. Після того, як ви це зробите, процес Vmmem не відображатиметься як великий споживач ресурсів у диспетчері завдань.
Вибір чудового менеджера віртуальних машин є важливим для ефективної роботи віртуальних машин. Надійний менеджер віртуальної машини забезпечить вам оптимальну продуктивність, чого не зможе звичайна.





