Topik ini menjelaskan cara mengidentifikasi dan menangani penyebab penggunaan memori tinggi pada instans Windows yang dapat menyebabkan masalah seperti kelambatan sistem.
Contoh dalam topik ini menggunakan Windows Server 2022. Antarmuka pengguna mungkin sedikit berbeda tergantung versi sistem operasi. Rujuklah antarmuka sistem operasi Anda.
Gejala
Instans ECS yang menjalankan Windows mungkin mengalami kelambatan dan layanan internalnya merespons secara lambat. Di Konsol ECS, pemantauan memori menunjukkan penggunaan memori tinggi, atau Anda menerima peringatan terkait penggunaan memori tinggi.
Kemungkinan penyebab
Penyebab umum penggunaan memori tinggi meliputi hal-hal berikut:
-
Proses atau layanan tidak normal mengonsumsi sejumlah besar memori.
-
Beban kerja aplikasi Anda sangat berat sehingga membutuhkan lebih banyak memori daripada kapasitas memori fisik yang tersedia pada instans.
Prosedur
Untuk mengidentifikasi penyebab penggunaan memori tinggi, ikuti langkah-langkah berikut.
Periksa total penggunaan memori
Gunakan Task Manager bawaan Windows untuk melihat penggunaan memori.
-
Pada kotak pencarian di pojok kiri bawah desktop Windows, masukkan Task Manager, lalu tekan
Enteruntuk membuka Task Manager. -
Di Task Manager, klik tab Performance, lalu klik Memory di panel kiri untuk melihat penggunaan memori.
Panel kanan menampilkan detail penggunaan memori, termasuk kapasitas total, memori yang In use (compressed), memori Available, dan persentase penggunaan memori.
Lihat penggunaan memori per proses
Gunakan Resource Monitor Windows untuk melihat penggunaan resource, termasuk penggunaan memori per proses.
-
Pada kotak pencarian di pojok kiri bawah desktop Windows, masukkan Resource Monitor, lalu tekan
Enteruntuk membuka Resource Monitor. -
Di Resource Monitor, klik tab Memory untuk melihat penggunaan memori setiap proses. Periksa nilai pada kolom Commit (KB) untuk mengidentifikasi proses yang mengonsumsi banyak memori. Kemudian, sesuaikan dengan beban kerja bisnis Anda untuk menentukan apakah perilaku proses tersebut wajar.
Penggunaan memori fisik terdiri atas bagian-bagian berikut:
-
Memori yang dicadangkan untuk hardware: Sebagian memori fisik yang dicadangkan sistem untuk perangkat keras. Perangkat tersebut mencakup GPU (Graphics Processing Units), kartu suara, network cards, dan modul Bluetooth. Memori yang dicadangkan ini tidak dapat digunakan oleh aplikasi standar dan didedikasikan untuk mendukung operasi normal perangkat keras.
-
Memori yang digunakan (In use memory): Memori yang digunakan oleh proses, driver, dan sistem operasi.
-
Memori termodifikasi (Modified memory): Memori yang isinya harus ditulis ke disk sebelum dapat digunakan untuk tujuan lain.
-
Memori siaga (Standby memory): Memori yang berisi data dan kode cache yang tidak digunakan.
-
Memori bebas (Free memory): Memori yang tidak berisi data berharga. Memori ini digunakan terlebih dahulu ketika proses, driver, atau sistem operasi memerlukan tambahan memori.
-
Cache: Saat sebuah file dibuka, sistem menyimpan file tersebut dalam cache agar pembacaan dan penulisan berikutnya lebih cepat. Di Windows Server 2008 R2 dan versi selanjutnya, penggunaan cache ini dibatasi. Hal ini memastikan bahwa memori fisik yang cukup tetap tersedia untuk aplikasi, meskipun ukuran cache-nya besar.
-
Lihat penggunaan memori oleh proses sistem
Jika Task Manager dan Resource Monitor tidak menunjukkan adanya proses yang mengonsumsi banyak memori tetapi penggunaan memori instans tetap tinggi, penyebabnya mungkin konsumsi memori tinggi oleh proses sistem. Dalam kasus ini, Anda dapat menggunakan tool RamMap dari Microsoft untuk analisis lebih lanjut. Tool ini dapat menunjukkan berapa banyak data file yang di-cache di RAM oleh proses sistem dan berapa banyak RAM yang digunakan oleh kernel serta device driver.
-
Unduh dan ekstrak tool RamMap.
Kunjungi situs web Microsoft untuk mengunduh RamMap. Setelah diunduh, ekstrak paket tersebut.
-
Klik ganda RamMap untuk membukanya dan melihat detail penggunaan memori.
Saat pertama kali dibuka, RamMap menampilkan tab Use Counts. Tabel tersebut mencantumkan jenis-jenis memori, seperti Process Private, Mapped File, Shareable, Page Table, Paged Pool, Nonpaged Pool, dan Metafile, serta menampilkan penggunaannya dalam kolom seperti Total, Active, Standby, Modified, Zeroed, dan Free. Di bagian atas, grafik batang berkode warna menunjukkan proporsi masing-masing jenis memori.
Tab-tab dalam tool RamMap menampilkan informasi penggunaan resource dengan cara berbeda. Daftar berikut menjelaskan setiap tab.
-
Use Counts: Ringkasan penggunaan berdasarkan jenis dan daftar halaman.
-
Processes: Ukuran working set setiap proses.
-
Priority Summary: Ukuran daftar standby berdasarkan prioritas.
-
Physical Pages: Penggunaan per halaman dari seluruh memori fisik.
-
Physical Ranges: Alamat memori fisik.
-
File Summary: Data file dalam RAM, dikelompokkan berdasarkan file.
-
File Details: Halaman fisik individual, dikelompokkan berdasarkan file.
-
Selesaikan penggunaan memori tinggi
Tabel berikut menjelaskan penyebab dan solusi untuk penggunaan memori tinggi.
|
Masalah |
Penyebab |
Solusi |
|
Aplikasi atau proses pengguna tunggal mengonsumsi memori berlebihan dalam jangka waktu lama. |
Aplikasi atau proses tidak normal mengonsumsi memori berlebihan. |
Di Task Manager atau Resource Monitor, temukan aplikasi yang paling banyak mengonsumsi memori, klik kanan aplikasi tersebut, lalu pilih End task. Peringatan
Sebelum mengakhiri proses, pastikan Anda memahami fungsinya untuk menghindari gangguan layanan. |
|
Beban kerja membutuhkan lebih banyak memori fisik daripada yang disediakan oleh instans. |
Evaluasi beban kerja Anda dan ubah tipe instans untuk menambah memori fisik. |
|
Aplikasi atau proses tunggal kadang-kadang mengalami lonjakan penggunaan memori yang singkat dan tidak sering. |
Lonjakan lalu lintas atau tugas terjadwal menyebabkan periode singkat konsumsi memori tinggi. |
|
Referensi
-
Untuk informasi tentang penggunaan memori tinggi pada Linux, lihat Cara menyelesaikan penggunaan memori tinggi pada instans Linux.
-
Gunakan Process Explorer dari Microsoft untuk melihat informasi detail tentang penggunaan memori proses.
-
Gunakan tool Poolmon dari Microsoft untuk melacak dan mengidentifikasi sumber konsumsi pool memori kernel berdasarkan pool tag.