Ubah Windows "Swappiness"

10

Apakah ada padanan yang dapat dimodifikasi dari "swappiness" di Windows 7?

Sistem saya memiliki 8GB RAM yang lebih dari cukup untuk penggunaan sehari-hari saya. Saya ingin mengubah perilaku swap, apa yang * sistem NIX sebut swappiness dan set ke 0, seperti yang telah saya lakukan pada mesin Ubuntu saya.

Saya telah mencari di Web untuk ini tetapi semua jawaban tampaknya untuk sistem * NIX.

sumpah
sumber
Karena penasaran, apakah menetapkan swappiness ke nilai yang lebih tinggi atau lebih rendah lebih baik?
Jon
Itu tergantung pada berapa banyak RAM yang Anda miliki dan berapa banyak yang Anda gunakan. Dalam kasus saya, mengaturnya ke 0 hanya akan bertukar ke disk untuk mencegah out of memorykesalahan. Lihat jawaban ini di AskUbuntu untuk lebih lanjut @ chipperyman573
rath
1
sepertinya windows tidak memiliki perlindungan darurat terhadap kesalahan memori. Lihat tautan dari jawaban saya.
wullxz
kemungkinan duplikat dari Bagaimana mengontrol penggunaan RAM / swap
Ƭᴇcʜιᴇ007

Jawaban:

7

Di bawah Windows ada sesuatu yang disebut "pagefile" di mana sistem bertukar aplikasi untuk mendapatkan RAM gratis. Saat ini saya tidak di mesin Windows tetapi langkah-langkah yang Adobe letakkan di sini terlihat benar (saya pikir Win+ Pauseadalah jalan pintas ke "Pengaturan Sistem Lanjut).

Meskipun dimungkinkan untuk menonaktifkan pagefile, ada beberapa kekhawatiran tentang itu. Untuk informasi lebih lanjut baca ini

wullxz
sumber
2
Seperti yang Anda katakan dalam komentar Anda, Windows memang tampaknya tidak memiliki perlindungan terhadap kesalahan kehabisan memori. Ini membuat saya percaya bahwa tidak ada padanan "swappiness". Namun demikian, +1 untuk pintasan baru yang menarik yang telah saya pelajari, dan ditandai sebagai diterima karena tautan yang Anda poskan membawa saya ke artikel ini . Cheers
rath
Ada banyak orang di luar sana dengan file halaman dimatikan. Sistem tidak melemparkan beberapa hal di sana yang tidak akan digunakan untuk beberapa waktu dengan cara yang dapat dianggap tidak sehat. Sistem tidak mungkin "kehabisan memori" kecuali dalam situasi di mana pengguna biasanya tahu apa yang sedang terjadi, sering kali ada banyak cache yang dapat dibebaskan terlebih dahulu (dengan asumsi itu dibebaskan dengan benar). Alasan untuk tidak menonaktifkannya secara lengkap Beberapa Program akan cocok, jika tidak ada. Dan kesalahan yang mereka lemparkan tidak akan membuat perasaan selalu.
Psycogeek
1
Saya memiliki laptop dengan RAM 8GB dan telah menggunakan swap off. Tidak ada perbedaan antara memiliki 8GB RAM tanpa swap vs 4 GB RAM + 4GB max swap. Selalu ada batas, dan begitu Anda mencapai itu Anda akan melihat kesalahan.
Natan
@ Natan: Saya akan mengambil 8GB RAM lebih dari 4 + 4 setiap hari, apa yang terjadi dengan kinerja Anda ketika Anda kehabisan fisik selama operasi intensif RAM?
Mark K Cowan
@MarkKCowan Saya kira ada perbedaan antara memiliki 128MB dan 8GB RAM. Ketika memori sudah penuh, OS akan mulai mengklaim kembali memori dan pengumpul sampah akan melakukan pekerjaan mereka. Di desktop dengan 8GB, praktis dijamin cukup akan direklamasi untuk terus berjalan, karena sebagian besar adalah cache. Jika Anda kehabisan memori, bertukar akan selalu lebih buruk daripada merebut kembali memori karena disk adalah urutan besarnya lebih lambat daripada CPU + RAM.
Natan
0

Ada lebih banyak memori virtual daripada hanya "aplikasi yang mengalokasikan RAM dan ketika RAM fisik habis, sesuatu akan diarahkan ke SWAP".

Di Linux (dan mungkin UNIX pada umumnya), sistem mencoba untuk membuat halaman baru dibaca dalam RAM: program dieksekusi, data dimuat, data baru-baru ini ditulis (sudah pada disk juga) dll. Sehingga jika program yang sama dijalankan lagi, itu tidak harus dimuat ulang dari disk. Ketika beberapa program meminta lebih banyak memori untuk dialokasikan ke ruang alamat virtualnya, pertama-tama buffer disk sisa digunakan kembali (tanpa akses disk). Jika ini tidak cukup, beberapa halaman aplikasi yang berjalan, yang belum diakses baru-baru ini, benar-benar diganti. Di Linux, bertukar secara normal tidak terjadi sama sekali. Setelah sistem Anda mulai bertukar, Anda melihat peningkatan aktivitas drive (dan kelesuan) dan Anda pergi "oh apa f .." karena itu mungkin berarti bahwa beberapa aplikasi bocor memori, atau sesuatu di bawah tenda mulai memunculkan di luar kendali.

Windows secara tradisional memiliki kebiasaan tambahan yang bodoh, bahwa mereka menukar seluruh aplikasi ruang pengguna setelah beberapa waktu habis karena tidak aktif. Sebenarnya, tanpa pengampunan, hanya untuk memiliki RAM sebanyak mungkin, "untuk berjaga-jaga" Anda ingin memulai lagi aplikasi lapar. Jika Anda membiarkan PC Anda berjalan, dan Anda pergi selama beberapa jam, setelah kembali, Anda melihat bahwa aplikasi apa pun yang Anda gunakan, aplikasi itu akan dimuat ulang dari swap. Perilaku ini sangat menyakitkan di Windows 2000 dan secara bertahap semakin tidak terlihat dalam versi Windows yang lebih modern. Di W2k, mematikan swap adalah no-brainer. Windows 7 masih dapat mengalir seperti madu kadang-kadang tanpa alasan tertentu, Windows 8.1 dan 10 terasa jauh lebih baik ... tetapi masih tidak ada tombol tweakable untuk "swappiness", atau parameter lain yang dapat dicari dari algoritma swapping.

Ada faktor-faktor lain yang dapat menyebabkan sistem menggiling sepanjang akses disk yang lambat. Di Windows 7, Anda tidak pernah tahu apakah sistem baru saja menukar aplikasi Anda dengan cara W2k tua yang baik, atau jika Anda harus menyalahkan Antivirus karena fakta bahwa aplikasi Anda mulai sangat lambat, atau jika Pembaruan Windows melakukan sesuatu di latar belakang kali ini (diketahui memiliki kebiasaan membalas dalam algoritme yang mengarah ke hang dengan konsumsi CPU 100% dan / atau meronta-ronta disk), atau jika secara khusus beberapa. tugas Framework kebersihan petugas kebersihan tersesat dalam database WinSXS atau apa. Pada beberapa kesempatan / dalam beberapa versi / inkarnasi perangkat lunak Microsoft, sebenarnya tampak bahwa beberapa windows-asli "di latar belakang tugas" (khususnya Windows Update manajemen basis data lokal) sengaja "dikaburkan" di task manager, penggunaan CPU dan RAM mereka tidak menunjukkan konsumsi total memori. Aktivitas "sah", tetapi cukup sulit untuk dibedakan dari rootkit malware ... Hanya sekali labrakan berhenti dan balon yang mengatakan "pembaruan baru tersedia" segera muncul, Anda tahu apa alasannya.

Setidaknya versi Windows terbaru dapat memberi tahu Anda aktivitas IO disk per proses, dan masing-masing layanan sekarang dilaporkan secara terpisah (bukan proses SVCHOST.EXE tunggal).

frr
sumber