Proses Docker VMMEM membutuhkan terlalu banyak memori di Windows 11/10

Proses Docker VMMEM membutuhkan terlalu banyak memori di Windows 11/10

Pengguna yang telah menginstal Docker menggunakan Subsistem Windows untuk Linux2 pada mesin Windows mereka telah mengeluh mengalami proses VMMEM yang mengonsumsi sejumlah besar daya memori. Menurut pengguna yang terkena dampak ini, pengurasan memori ini keluar dari grafik, kadang -kadang bahkan mencapai hingga 99% (1.5-2 GB RAM)! Ini adalah masalah yang memprihatinkan karena ini memperlambat sistem yang terpengaruh secara signifikan. Jadi, Anda harus mengikuti perbaikan ini untuk menyelesaikan masalah.

Daftar isi

  • Perbaiki 1 - Biarkan Berlari
  • Perbaiki 2 - Shutdown WSL
  • Perbaiki 3 - Batasi Penggunaan Memori
  • Perbaiki 4 - restart lxssmanager
  • Perbaiki 5 - Tingkatkan Sumber Daya yang Dialokasikan

Perbaiki 1 - Biarkan Berlari

Proses VMMEM terus berjalan bahkan setelah Anda menutup WSL2. Ini adalah perilaku normal dan VMMEM dapat terus mengonsumsi jumlah sumber daya sistem yang lebih tinggi hingga 1-2 menit setelah mengakhiri proses VMMEM. Jadi, tunggu sampai titik itu sampai berhenti dan akhirnya melepaskan ingatan.

Perbaiki 2 - Shutdown WSL

Cara terbaik untuk menghentikan Docker dari menggunakan terlalu banyak memori adalah dengan mematikan subsistem Windows untuk Linux.

CATATAN - Karena ini menghentikan WSL2, Anda harus berhati -hati dalam menjalankan ini hanya pada saat membutuhkan. Jadi, hanya jalankan ini saat Anda selesai menjalankan Docker dan Anda tidak membutuhkannya lebih jauh.

1. Anda dapat melakukan ini dari terminal mana pun tetapi Anda harus membukanya dengan hak administrasi. Jadi, buka kotak pencarian dan ketik "PowerShell“.

2. Lalu, klik kanan "Windows PowerShell"Dan klik"Jalankan sebagai administrator”Untuk membuka terminal sebagai admin.

PowerShell berjalan sebagai admin min

3. Sekarang, menulis ini di terminal dan mengenai Memasuki Untuk mematikan subsistem Windows untuk Linux.

WSL -Shutdown
WSL Shutdown Min 1

Ini akan menutup WSL2 dan akhirnya, VMMEM akan berhenti mengonsumsi sejumlah besar memori.

Perbaiki 3 - Batasi Penggunaan Memori

Ada cara lain Anda dapat mengikat penggunaan memori dengan WSL2. Anda dapat membuat file konfigurasi baru atau mengedit yang sudah ada.

Langkah 1

1. Pada awalnya Anda harus menutup konfigurasi WSL2.

2. Jadi, mulailah mengetik "PowerShell"Di kotak pencarian.

3. Lalu, klik kanan "Windows PowerShell"Dan klik"Jalankan sebagai administrator”Untuk menjalankan terminal sebagai admin.

PowerShell berjalan sebagai admin min

4. Setelah ini, jalankan kode ini untuk menghentikan WSL2 segera.

WSL -Shutdown
WSL Shutdown Min 1

Setelah ini, Anda dapat menutup PowerShell terminal.

Langkah 2

Sekarang, Anda harus membuat file konfigurasi. Jadi, meluncur melalui poin -poin ini.

1. Cari dan Buka Notepad.

Notepad Min

2. Di sana, tempel Dua baris ini.

[wsl2] memori = 2GB # membatasi memori VM di WSL 2 hingga prosesor 3GB = 2 # Buat WSL 2 gunakan hingga dua prosesor virtual

[CATATAN - Anda dapat melihat di file konfigurasi, kami telah mengatur parameter memori ke 2 GB dan penghitungan prosesor virtual menjadi 2. Ini adalah pengubah dan Anda dapat mengaturnya sesuai keinginan Anda.]

WS memori min

3. Setelah itu, klik "Mengajukan"Dan klik"Simpan sebagai”Untuk menyimpan file.

Simpan sebagai min

4. Sekarang, beri nama file "%Profil pengguna%\.wslconfig“.

5. Lalu klik "Menyimpan”Untuk menyimpan file.

Simpan Konfigurasi Min

Anda dapat menutup Notepad sesudah ini.

Setelah ini, buka Buruh pelabuhan. Segera setelah Anda membukanya, Anda akan melihat opsi untuk memulai kembali mesin virtual.

Jadi, klik "Ya”Untuk memulai kembali itu.

Sekarang, vmmem tidak akan memakan sejumlah besar domba jantan.

Langkah opsional -

Linux mengkonsumsi lebih banyak memori untuk file cache. Anda dapat mencegah ini dengan satu baris ini (jalankan dari terminal administratif) -

Echo 3 | sudo tee/proc/sys/vm/drop_caches

Ini harus membatasi penyimpanan cache dan membebaskan lebih banyak RAM untuk host.

Perbaiki 4 - restart lxssmanager

Anda harus memulai kembali lxssmanager di PowerShell.

1. Membuka PowerShell atau terminal lainnya sebagai admin.

2. Kemudian, memasukkan Perintah ini dan tekan Memasuki untuk memulai kembali lxssmanager.

Restart-Service LXSSmanager

Kemudian, periksa konsumsi RAM sekali lagi.

Perbaiki 5 - Tingkatkan Sumber Daya yang Dialokasikan

Anda dapat meningkatkan RAM yang dialokasikan, dan CPU dan bertukar dengan mudah sehingga konsumsi VMMEM berkurang secara signifikan.

1. Membuka Pengaturan Docker [Anda mungkin harus menjalankan Docker VM dalam mode Linux untuk melihat pengaturan ini.].

2. Di sana, pergi ke “Canggih"Pengaturan.

3. Di dalamnya, Anda dapat mengubah pengaturan CPU, memori, dan pertukaran sesuai dengan sumber daya sistem yang tersedia.

Ini harus mengurangi konsumsi sumber daya VMMEM secara signifikan.