Quy trình Vmmem trong Windows Task Manager là gì? Đây là cách khắc phục việc tiêu thụ nhiều tài nguyên của nó
Bạn đã gặp phải quá trình có tên “Vmmem” trong Windows Task Manager chưa? Nó có ngốn quá nhiều CPU, RAM và các tài nguyên hệ thống khác, điều này khiến bạn lo ngại? Đây là một quá trình được Windows sử dụng để chứng minh máy ảo tiêu thụ bao nhiêu tài nguyên.
Do đó, nếu nó cho thấy mức tiêu thụ CPU hoặc RAM quá nhiều thì đó là nguyên nhân gây ra lỗi cho máy ảo của bạn. Trong bài viết này, chúng tôi sẽ khám phá quy trình này chi tiết hơn và chỉ cho bạn cách bạn có thể giảm mức tiêu thụ tài nguyên của nó.
Mục Lục
Quy trình Vmmem làm gì?
Theo một bài đăng trên Microsoft DevBlogs, Windows tạo ra quy trình Vmmem để hiển thị tài nguyên mà máy ảo tiêu thụ. Khi bạn thấy quá trình này tiêu tốn quá nhiều tài nguyên trong Trình quản lý tác vụ, máy ảo của bạn thực sự đang sử dụng các tài nguyên này, quá trình này chỉ đang hiển thị.
Thông thường, chúng tôi thấy quá trình này đang chạy khi bạn chủ động chạy một máy ảo trong Hyper-V Manager hoặc sử dụng WSL (Hệ thống con của Windows cho Linux) để chạy các tệp thực thi nhị phân Linux. Nói chung, nó không nên làm quá tải tài nguyên của bạn, nhưng khi nó xảy ra, có điều gì đó không ổn.
Bạn cũng thấy mức tiêu thụ tài nguyên cao trong Trình quản lý tác vụ cho quá trình này? Hãy xem chúng tôi có thể làm gì để khắc phục nó.
Trước tiên, hãy tìm hiểu nguyên nhân gây ra vấn đề
Đầu tiên, xác định máy ảo hoặc chương trình nào đứng sau việc tiêu thụ tài nguyên cao của quy trình Vmmem. Nếu bạn chỉ chạy một trình quản lý máy ảo, thì bạn đã tìm thấy sự cố. Tuy nhiên, nếu bạn đang chạy trình quản lý máy ảo và WSL đồng thời, bạn sẽ cần xác định chương trình nào đang gây ra sự cố.
Làm thế nào bạn có thể xác định điều gì đang làm cho nguồn lực của bạn trở nên căng thẳng? Để tìm hiểu, dùng thử và là cách tiếp cận tốt nhất. Đóng các máy ảo trong Trình quản lý Hyper-V của bạn và xem điều đó có giúp giảm tiêu thụ tài nguyên hay không. Tương tự, bạn có thể tắt các công cụ WSL và xem tác động của chúng.
Khi chúng tôi đóng một máy ảo trong Hyper-V Manager, quy trình Vmmem sẽ biến mất khỏi Task Manager ngay lập tức, điều đó có nghĩa là quy trình này không còn tiêu thụ tài nguyên nữa. Ngược lại, khi chúng tôi đóng các công cụ Linux hoặc WSL, quá trình Vmmem mất một thời gian để biến mất, vì vậy hãy đợi một chút trước khi đánh giá tác động của việc đóng nó.
Khi bạn đã xác định được thủ phạm chính, hãy tham khảo hướng dẫn bên dưới giải thích cách giảm tiêu thụ tài nguyên máy ảo trong Hyper-V Manager và WSL.
Cách giảm mức tiêu thụ tài nguyên của máy ảo trong trình quản lý Hyper-V
Nếu quy trình Vmmem cho thấy mức tiêu thụ tài nguyên cao trong Trình quản lý tác vụ khi chạy máy ảo trong Trình quản lý Hyper-V, thì trước tiên hãy áp dụng các bước kiểm tra sơ bộ sau:
- Bật và tắt máy ảo của bạn trong Hyper-V Manager.
- Khởi động lại Hyper-V Manager sau khi đóng nó.
- Chỉ chạy một máy ảo trong Hyper-V Manager nếu bạn có nhiều máy.
- Nếu bạn đang đồng thời sử dụng một ứng dụng khách máy ảo khác với Trình quản lý Hyper-V, hãy đóng nó.
Nếu các kiểm tra trên không làm giảm mức tiêu thụ tài nguyên, bạn có thể kiểm tra bằng cách xem quá trình Vmmem tiêu thụ bao nhiêu tài nguyên trong Trình quản lý tác vụ, hãy giới hạn việc phân bổ tài nguyên của máy ảo trong Trình quản lý Hyper-V. Đây là cách thực hiện:
- Khởi chạy Trình quản lý Hyper-V.
- Nhấp chuột phải vào máy ảo của bạn và nhấp vào Cài đặt.
- Trên thanh bên trái, hãy nhấp vào Kỉ niệm.
- Đặt dung lượng RAM tối đa mà máy ảo có thể sử dụng.
- Bỏ chọn hộp cho Bật bộ nhớ động hoặc giới hạn RAM động mà máy ảo có thể sử dụng ở đó.
Tương tự, bạn có thể thay đổi các thông số khác để hạn chế máy ảo chỉ sử dụng các tài nguyên được chỉ định và không làm căng máy tính của bạn. Nếu việc điều chỉnh các cài đặt này không giúp giảm mức tiêu thụ tài nguyên, bạn có thể bỏ Hyper-V Manager và sử dụng một trình quản lý máy ảo khác, chẳng hạn như VirtualBox hoặc VMware.
Hầu hết các trình quản lý ảo của bên thứ ba hiển thị mức tiêu thụ bộ nhớ trong Trình quản lý tác vụ bằng cách sử dụng các quy trình khác với quy trình Vmmem. Ví dụ, VMWare sử dụng một quy trình có tên là VMware-vmx.exe. Do đó, hãy theo dõi chúng và nếu chúng tiêu tốn quá nhiều tài nguyên, hãy hạn chế phân bổ bộ nhớ của chúng hoặc áp dụng các bản sửa lỗi được đề cập cho Hyper-V Manager.
Tùy thuộc vào bản dựng Windows của bạn (và thực sự dễ dàng để kiểm tra bản dựng của bạn trên Windows 11), WSL có thể có quyền sử dụng 50% đến 80% RAM của bạn, như được giải thích trong tài liệu của Microsoft. Do đó, bạn có thể tưởng tượng nó có thể trở nên đói tài nguyên như thế nào, đó chính xác là những gì mà quy trình Vmmem cố gắng chứng minh.
Nếu việc chạy Hệ thống con của Windows dành cho Linux hoặc các công cụ Linux cụ thể dẫn đến việc tiêu thụ nhiều tài nguyên, như được hiển thị trong quy trình Vmmem, bạn có thể lấy lại bộ nhớ và khắc phục sự cố bằng cách làm theo các bước sau:
1. Khởi động lại WSL theo cách thủ công
Một trong những cách dễ nhất để giải quyết việc tiêu thụ nhiều tài nguyên bởi các công cụ WSL hoặc Linux là khởi động lại chúng một cách đơn giản. Vì vậy, bạn nên đóng thủ công mọi công cụ Linux mà bạn đang mở ngay bây giờ, bao gồm cả chính WSL.
Chờ một chút và xem liệu quá trình Vmmem có ngừng hiển thị cho bạn mức tiêu thụ tài nguyên khổng lồ sau đó hay không. Nếu có, hãy khởi động lại các bản phân phối WSL và xem liệu quá trình Vmmem có hoạt động giống như vậy không. Nếu vậy, hãy bỏ qua lần sửa thứ hai và áp dụng lần thứ ba.
Tuy nhiên, nếu bạn đóng WSL theo cách thủ công và nó không dừng quá trình Vmmem trong Trình quản lý tác vụ, bạn buộc phải tắt nó. Trong bản sửa lỗi tiếp theo, chúng tôi sẽ giải thích cách hoạt động.
2. Buộc đóng WSL và khởi động lại nó
Để đóng WSL cưỡng bức, hãy làm theo các bước sau:
- Chạy Command Prompt với tư cách quản trị viên.
- Loại hình “wsl –shutdown.”
- Đánh đi vào.
Khởi động lại các bản phân phối WSL sau đó. Nếu khởi động lại WSL không khắc phục được sự cố, hãy tiến hành sửa chữa tiếp theo.
3. Giới hạn tài nguyên theo cách thủ công cho WSL
WSL cũng có thể bị hạn chế về tài nguyên mà nó sử dụng để không làm hệ thống của bạn quá tải với nhu cầu tài nguyên quá mức. Bạn chỉ có thể thực hiện việc này với WSL 2, chỉ hoạt động trên Windows Builds cao hơn 19041. Hãy xem bài viết của chúng tôi về cách cài đặt WSL 2 trên Windows nếu bạn chưa có.
Nếu Bản dựng Windows của bạn hỗ trợ WSL 2 và bạn đã cài đặt nó, bạn có thể giới hạn tài nguyên của nó bằng cách làm theo các bước sau:
- Chạy Windows Command Prompt với tư cách quản trị viên.
- Loại hình “wsl –shutdown” và hãy nhấn đi vào.
- Đóng Dấu nhắc Lệnh của Windows.
- Mở WSL.
- Sau khi thay thế tên người dùng của bạn, hãy nhập lệnh sau:
editor "$(wslpath "C:UsersYourUsername.wslconfig")"
- Đánh đi vào.
- Nhập cấu hình sau: [wsl2] bộ nhớ = 5GB (giới hạn nó dựa trên kích thước RAM của bạn)
- Đánh CTRL + X.
- Nhấn “Y” khi được nhắc lưu các thay đổi.
- Xác nhận vị trí bằng cách nhấn đi vào lại.
- Lặp lại các bước từ một đến ba.
- Chạy lệnh sau sau khi khởi động lại WSL để xác nhận tài nguyên đã được cấp phát thành công.
free -h --giga
Với các bước trên, bạn có thể giới hạn việc sử dụng tài nguyên của WSL để không làm quá tải máy tính của bạn.
Có thể kết thúc quá trình Vmmem không?
Task Manager không cho phép bạn đóng tiến trình Vmmem như các tác vụ thông thường. Nếu bạn cố gắng làm như vậy, bạn sẽ gặp phải lỗi. Để kết thúc quá trình Vmmem, bạn cần đóng các máy ảo và WSL hoặc bất kỳ công cụ Linux nào của nó.
Đừng để máy ảo tiêu tốn tài nguyên của bạn
Các thủ thuật được đề cập trong bài sẽ giúp bạn hạn chế việc tiêu tốn tài nguyên máy ảo. Sau khi bạn làm điều đó, quy trình Vmmem sẽ không xuất hiện như một người tiêu thụ tài nguyên cao trong Trình quản lý tác vụ.
Lựa chọn một trình quản lý máy ảo xuất sắc là điều cần thiết để chạy các máy ảo một cách hiệu quả. Một trình quản lý máy ảo đáng tin cậy sẽ cung cấp cho bạn hiệu suất tối ưu, điều mà một trình quản lý máy ảo thông thường sẽ không làm được.