Bagaimana cara mengurangi disk lab (paging)?

11

Saya memiliki 4 GB RAM, tetapi Windows masih kadang-kadang meronta-ronta disk (terutama sering ketika suatu aplikasi diminimalkan untuk beberapa waktu dan kemudian saya mengaktifkannya lagi). Benar-benar bodoh, karena Task Manager menunjukkan 2 GB RAM gratis. Apakah ada cara untuk mencegah Windows menukar memori program?

Saya mencoba mengatur Superfetch hanya untuk me-cache file startup (ini sedikit membantu) dan mematikan file paging (itu banyak membantu, dan bekerja dengan baik untuk saya di Windows XP; tetapi Windows Vista / Windows 7 tidak memungkinkan itu - ini menunjukkan "rendah pada memori "pesan sering, bahkan ketika saya memiliki RAM 1 GB gratis.)

Apa yang bisa Anda sarankan untuk saya lakukan?

skevar7
sumber
6
Anda tidak ingin mematikan superfetch dengan RAM 4GB, tetapi Anda mungkin ingin mematikan Pengindeksan. Biarkan file halaman sendiri, Windows tahu lebih banyak tentang hal itu daripada kita semua. Saya tidak bisa membantu dengan paging.
Phoshi
2
Tidak, saya pasti ingin mematikannya. Benda terkutuk itu dirancang terlalu buruk. Setelah saya menemukannya memuat semua file dari beberapa permainan di setiap boot (saya biasa bermain di malam hari), dan itu memakan setengah dari RAM saya, dan itu adalah hari terakhir Superfetch berjalan pada PC saya dengan pengaturan tidak terbatas.
skevar7
1
Istilah meronta-ronta umumnya mengacu pada situasi di mana memori fisik penuh atau hampir penuh, dan pertukaran halaman konstan terjadi. Itu tidak merujuk pada aktivitas pertukaran halaman normal. Apa yang Anda lihat tidak meronta-ronta, tetapi hanya bagaimana algoritma manajemen memori dirancang. Jaga ruang yang tersedia untuk proses yang baru saja muncul, asumsikan bahwa suatu proses yang meminimalkan jendela tidak digunakan dan harus memindahkan memorinya ke disk dan semacamnya.
Spowers
2
Itu adalah keputusan terburuk yang pernah diasumsikan bahwa karena sebuah jendela diperkecil maka tidak digunakan. Jika diminimalkan, itu karena tidak ada ruang yang cukup untuk layar sementara multitasking. Saya sangat muak kembali ke komputer saya dan meskipun memiliki beberapa program yang berjalan, itu akan tertinggal dan gagap untuk membawa data kembali dari file halaman ketika saya memulihkan beberapa jendela dari keadaan diminimalkan, meskipun memiliki GIG dari RAM gratis. File halaman harus TIDAK PERNAH disentuh kecuali saya kehabisan RAM. Jika Windows ingin membuat asumsi tentang program yang diminimalkan, lakukan ketika tidak ada cukup RAM.
Triynko

Jawaban:

7

Mark Russianovich telah menulis artikel panjang yang bagus tentang Memori Virtual,
Mendorong Batas Windows: Memori Virtual

Memori virtual memisahkan pandangan program terhadap memori dari memori fisik sistem, sehingga sistem operasi memutuskan kapan dan apakah akan menyimpan kode dan data program dalam memori fisik dan kapan harus menyimpannya dalam file. Keuntungan utama dari memori virtual adalah memungkinkan lebih banyak proses untuk dieksekusi secara bersamaan daripada yang mungkin muat dalam memori fisik.

Sementara memori virtual memiliki batas yang terkait dengan batas memori fisik, memori virtual memiliki batas yang berasal dari sumber yang berbeda dan yang berbeda tergantung pada konsumen. Misalnya, ada batas memori virtual yang berlaku untuk proses individu yang menjalankan aplikasi, sistem operasi, dan untuk sistem secara keseluruhan. Penting untuk diingat ketika Anda membaca ini bahwa memori virtual, seperti namanya, tidak memiliki koneksi langsung dengan memori fisik. Windows menetapkan cache file sejumlah memori virtual tidak menentukan berapa banyak data file yang sebenarnya tersimpan dalam memori fisik; itu bisa berupa jumlah apa pun dari tidak ada hingga lebih dari jumlah yang dapat dialamatkan melalui memori virtual.

Ini adalah bacaan yang sangat bagus.

Seberapa Besar Saya Harus Membuat File Paging?
Mungkin salah satu pertanyaan paling umum yang terkait dengan memori virtual adalah, seberapa besar saya harus membuat file paging? Tidak ada akhir dari saran konyol di web dan di majalah kios yang membahas Windows, dan bahkan Microsoft telah menerbitkan rekomendasi yang menyesatkan. Hampir semua saran didasarkan pada mengalikan ukuran RAM dengan beberapa faktor, dengan nilai-nilai umum adalah 1.2, 1.5 dan 2. Sekarang setelah Anda memahami peran yang dimainkan file paging dalam menentukan batas komit sistem dan bagaimana proses berkontribusi pada biaya komit, Anda berada di posisi yang tepat untuk melihat betapa tidak bergunanya formula seperti itu.


Artikel sebelumnya: Mendorong Batas Windows: Memori Fisik

Anda dapat melihat tata letak memori fisik dengan alat Meminfo oleh Alex Ionescu .

nik
sumber
5
Tidak ada yang baru bagi saya di sana. Dan itu sama sekali bukan jawaban untuk pertanyaan saya.
skevar7
2
@ skevar7: Mungkin bukan jawaban untuk Anda, tetapi tautan yang bagus untuk penjelasan tentang semuanya bagi seseorang yang akan menemukan topik ini dan yang tidak memiliki pengetahuan sebanyak Anda.
Gnoupi
1
aturan praktis: bahkan tidak menyebutkan Paging kecuali dengan kepastian mutlak terkait dengan masalah Anda atau jika Anda hanya ingin memicu diskusi tanpa akhir tentang DO dan DON'Ts ... hal yang sama berlaku untuk browser web dan perangkat lunak anti virus: )
1
Saya benar-benar yakin paging bersalah, karena perfmon menunjukkan kesalahan keras ketika disk meronta-ronta. Saya pasti TIDAK tahu bahwa mematikan file paging secara signifikan meningkatkan kinerja. Ini fakta objektif dan bisa diukur. Satu-satunya masalah adalah bahwa Windows karena Vista tidak ingin bekerja dalam konfigurasi seperti itu lagi.
skevar7
3
@ skevar7: Dan mungkin, mungkin saja, ada orang yang kompeten berpikir di Microsoft, dan mereka berpikir dan memutuskan bahwa file halaman diperlukan. Mereka tidak melakukannya hanya untuk mengganggumu.
Gnoupi
4

Biarkan saja manajemen memori virtual ke Windows, itu melakukan pekerjaan dengan baik. Paging (dan karenanya uraian Mark Russinovic mengenai masalah ini) agak tidak relevan dengan disk yang meronta-ronta (jika Anda memiliki memori sistem yang melimpah), Anda mencari tweak NTFS .

O'Reilly memiliki artikel menarik tentang NTFS Performance Hacks .

Di sisi perangkat keras: hard drive yang lebih baik dengan laju putaran yang lebih tinggi dan cache yang lebih besar juga akan sangat membantu.

Dan di sini adalah cara untuk membunuh peringatan kehabisan memori, mengambil kepemilikan dan nuklir kunci registri berikut

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WDI\DiagnosticModules\ {5EE64AFB-398D-4edb-AF71-3B830219ABF7}]

dan

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\WDI\DiagnosticModules\ {45DE1EA9-10BC-4f96-9B21-4B6B83DBF476}]

Ini akan mencegah Layanan Diagnostik dari memuat RADAR. Ini berfungsi untuk saya di Windows Vista, tombolnya ada di Windows 7. Saya belum mencobanya - cukup buat cadangan kunci itu sebelum Anda menghapusnya.

Peter Mortensen
sumber
2

Satu-satunya cara yang saya temukan adalah meningkatkan ukuran RAM menjadi 8 GB dan mematikan paging dengan pengaturan

HKEY_LOCAL_MACHINE \ System \ CurrentControlSet \ Control \ Session Manager \ Memory Management \ DisablePagingExecutive = 1

(diperlukan reboot).

Itu mengurangi aktivitas disk menjadi hampir nol.

skevar7
sumber
Saya menduga Anda memiliki drive yang unik atau lambat untuk menginginkannya. Saya memiliki sesuatu yang serupa dan bertentangan dengan apa yang dianggap kebanyakan orang di sini, apa yang Anda lakukan akan menjadi solusi yang baik. Meningkatkan RAM dan menggunakan paging disk yang minimal atau tidak sama sekali mungkin merupakan solusi yang lebih cerdas (dan ekonomis) daripada mengganti media yang lambat.
j riv
Pengaturan registri itu tidak "mematikan paging". Ini hanya menonaktifkan paging untuk apa yang seharusnya menjadi bagian halaman dari ntoskrnl.exe dan kumpulan halaman.
Jamie Hanrahan
Tidak tahu tentang Vista tetapi pada Windows 7 saya menonaktifkan paging dan tidak memiliki masalah dan peringatan. Ini dengan 8 atau 16GB RAM.
i486
1

Periksa Panel Kontrol \ Sistem dan Keamanan \ Sistem> Pengaturan Sistem Lanjut> [Lanjutan]> Kinerja: Pengaturan> [Lanjutan]

Penjadwalan prosesor terkait dengan masalah Anda, seperti kemampuan untuk menonaktifkan file paging yang seharusnya tidak Anda lakukan. (Anda membutuhkannya)

encore2097
sumber
0

Sepertinya Anda menginstal pembersih cache / mem. Mereka memindahkan aplikasi untuk bertukar ketika Anda menguranginya alih-alih meninggalkannya di memori.

Apakah sistemnya lambat atau Anda hanya menggunakan kata thrash karena Anda melihat lampu HD berkedip?

UnderLoK
sumber
Tidak ada pembersih. Kadang-kadang dibutuhkan lebih banyak waktu daripada biasanya untuk melakukan operasi sederhana (5-10 detik) dan disk meremukkan. Ini biasanya terjadi setelah aplikasi diam selama beberapa waktu. Operasi yang sangat sederhana - buka tab baru di Opera, buat file baru di Visual Studio, dll. Jadi saya kira algoritma paging Windows jauh dari sempurna. Benar-benar mematikan file halaman bekerja dengan baik untuk saya di WinXP, tetapi sayangnya Vista dan Win7 tidak mengizinkannya.
skevar7
Tidak seperti banyak OS Windows akan memasang dengan cukup banyak masalah perangkat keras tanpa menabrak dan bisa jadi semacam pemulihan terjadi di latar belakang yang menyebabkan lag. Saya tahu ini payah, tetapi jalankan tes HD untuk memastikan itu tidak didongkrak karena ini benar-benar terdengar seperti masalah I / O karena masalahnya hilang ketika Anda tidak mengizinkan sistem untuk menggunakan swap. Periksa pembaruan BIOS terkait I / O, pengontrol hd, dll. Karena mungkin ada masalah yang diketahui. Apakah sistem mengambil SELAMANYA untuk boot (XP, Vista, atau 7)? Jika demikian, ini jelas merupakan masalah I / O.
UnderLoK
* Saya seharusnya mengatakan "Windows akan memasang cukup banyak masalah perangkat keras tanpa memberi tahu Anda tentang masalah";)
UnderLoK
0

Pindah ke Linux, itu tidak melakukan itu.

Orang-orang akan memberi tahu Anda bahwa Windows lebih pintar daripada Anda dan Anda seharusnya tidak mengutak-atik pengaturan file halaman dan mereka benar. Tetapi sistem itu sebagian besar disetel untuk mengalokasikan memori baru untuk suatu proses hampir secara instan dan itu baik. Salah satu efek sampingnya adalah ia memindahkan semua yang Anda miliki dalam memori ke dalam disk setiap saat, jadi ketika ia membutuhkan bagian memori yang baru, ia hanya dapat menghapus bagian memori ini dan memberikannya segera jika itu tidak berubah tentu saja. Saya percaya bahwa ketika Anda membiarkan aplikasi Anda berjalan, semua datanya disimpan ke dalam disk dan kemudian di beberapa titik aplikasi lain atau sistem cache mulai menggunakan memori ini. Jadi aplikasi dibiarkan dengan minimal data mereka ke dalam RAM fisik dan ketika Anda mulai menggunakannya lagi itu harus mendapatkan semuanya kembali dari disk.

Yang mengatakan, saya tidak berpikir Anda bisa melakukan semuanya dengan itu, itu hanya salah satu sifat utama dari sistem. Anda dapat memperburuknya dengan mematikan halaman atau melakukan penyetelan sistem lainnya. Anda tidak dapat membuatnya bekerja sesuka Anda karena itu tidak ditulis dengan pemikiran itu.

vava
sumber
2
Dan sekali lagi jawaban "windows saya melakukan itu, bagaimana saya bisa ...? -> Pindah ke linux". Namun sisa jawabannya benar, tetapi Anda bisa melakukannya tanpa kalimat pertama.
Gnoupi
OK, tetapi ketika Anda memiliki 8GB RAM dan kebutuhan sebenarnya adalah 3GB - mengapa perlu melakukan swap ke disk? Di sisi lain, bayangkan Anda memiliki 2GB RAM fisik + 2GB swap file - bagaimana sistem ini bekerja tanpa "ledakan"? 4GB sudah cukup untuk semuanya tetapi dengan 8GB RAM fisik + 0 swap itu "mungkin" untuk memiliki memori tidak cukup. Bagaimana? Saya pikir algoritma untuk memori virtual salah dari Windows 95 kali dan itu tidak diubah pada Windows 10.
i486