pengembangan-web-mp.com

Berapa banyak ruang SWAP pada sistem 2-4GB?

Bagaimana saya harus memutuskan ukuran apa yang akan membuat swap saya pada mesin Linux baru (Debian) dengan RAM 2-4 GB? Apakah saya benar-benar membutuhkan ruang swap?

53
C. Ross

Ada banyak cara untuk mengetahui berapa banyak swap yang digunakan di mesin. Saran umum menggunakan rumus berdasarkan RAM seperti 2 x RAM, 1,5 x RAM, 1 x RAM, .75 x RAM, dan .5 x RAM. Banyak kali formula bervariasi tergantung pada jumlah RAM (jadi kotak dengan 1GB RAM mungkin menggunakan 2 x RAM swap (2GB), sementara kotak dengan ram 16GB mungkin menggunakan .5 x RAM swap (8GB).

Satu hal yang perlu dipertimbangkan adalah untuk apa kotak itu akan digunakan. Jika Anda akan memiliki sejumlah besar proses yang berjalan secara bersamaan berjalan di kotak, tetapi sejumlah besar dari mereka akan menganggur untuk periode waktu, kemudian menambahkan swap ekstra masuk akal. Jika Anda akan menjalankan sejumlah kecil proses kritis, maka menambahkan swap ekstra masuk akal (ini mungkin tampak kontra-intuitif, tapi saya akan jelaskan sebentar lagi). Jika Anda menjalankan kotak sebagai desktop, maka menambahkan pertukaran ekstra masuk akal.

Adapun apakah Anda harus memasukkan swap, ya, Anda harus. Anda harus selalu menyertakan ruang swap kecuali Anda sungguh tahu apa yang Anda lakukan, dan Anda benar-benar memiliki alasan yang bagus untuk itu.

Lihat, cara kerja kernel Linux, swap tidak hanya digunakan ketika Anda telah kehabisan semua memori fisik. Kernel Linux akan mengambil aplikasi yang tidak aktif (tidur) dan setelah periode waktu tertentu, pindahkan aplikasi untuk bertukar dari memori nyata. Hasilnya adalah ketika Anda membutuhkan aplikasi itu, akan ada penundaan sesaat (biasanya hanya satu atau dua detik) sementara memori aplikasi dibaca kembali dari swap ke RAM. Dan ini biasanya hal yang baik.

Ini memungkinkan Anda untuk meletakkan aplikasi yang tidak aktif ke "sleep", memberikan akses aplikasi aktif Anda ke RAM tambahan. Selain itu, Linux akan menggunakan segala yang tersedia (tidak terisi) RAM pada mesin sebagai cache disk, membuat sebagian besar (lambat) aktivitas disk lebih cepat dan lebih responsif. Menukar proses yang tidak aktif memberi Anda lebih banyak cache disk dan membuat mesin Anda secara keseluruhan lebih cepat.

Terakhir, mari kita hadapi itu, ruang disk murah. Sangat murah. Benar-benar tidak ada alasan bagus sama sekali untuk tidak menggesek sepotong (relatif) sedikit ruang untuk swap. Jika saya menjalankan dengan 2GB - 4GB RAM dalam mesin, saya mungkin akan mengatur ruang swap saya untuk setidaknya sama dengan RAM. Jika itu kurang dari 2GB RAM, maka Saya masih menggunakan minimal 2GB swap.

UPDATE: Seperti komentar yang sangat baik disebutkan (dan saya lupa untuk memasukkan), jika Anda menjalankan laptop atau desktop yang Anda mungkin ingin dimasukkan ke dalam mode 'hibernate' (Tangguhkan ke Disk), maka Anda selal ingin setidaknya swap sebanyak yang Anda miliki memori. Ruang swap akan digunakan untuk menyimpan konten RAM di komputer saat 'tidur'.

54

Red Hat merekomendasikan rumus berikut untuk server dengan banyak ram:

if MEM < 2GB then SWAP = MEM*2 else SWAP = MEM+2GB

Jika sistem Anda memiliki ram 1 GB, swap Anda akan menjadi 2 GB, untuk 16 GB itu akan menjadi 18 GB.

17
PEra

Jawaban terlambat, dan saya pikir ini cukup banyak dibahas dalam jawaban yang dipilih, tetapi ada beberapa info yang baik dan mudah dicerna dalam jawaban yang diberikan oleh @ssapkota di sini (salin/tempel di bawah).

Berikut rekomendasi yang sangat bagus dari RedHat: Recommended System Swap Space

Kutipan dari tautan yang sama:

Dalam beberapa tahun terakhir, jumlah ruang swap yang direkomendasikan meningkat secara linear dengan jumlah RAM dalam sistem. Tetapi karena jumlah memori dalam sistem modern telah meningkat menjadi ratusan gigabyte, sekarang diakui bahwa jumlah ruang swap yang dibutuhkan suatu sistem adalah fungsi dari beban kerja memori yang berjalan pada sistem itu. Namun, mengingat bahwa ruang swap biasanya ditunjuk pada waktu instalasi, dan dapat sulit untuk menentukan sebelumnya beban kerja memori suatu sistem , kami sarankan untuk menentukan pertukaran sistem menggunakan tabel berikut.

Tabel saat ini (per Desember 2012):

Amount of RAM in the system   Recommended swap space         Recommended swap space 
                                                             if allowing for hibernation
---------------------------   ----------------------------   ---------------------------
2GB of RAM or less            2 times the amount of RAM      3 times the amount of RAM
2GB to 8GB of RAM             Equal to the amount of RAM     2 times the amount of RAM
8GB to 64GB of RAM            0.5 times the amount of RAM    1.5 times the amount of RAM
64GB of RAM or more           4GB of swap space              No extra space needed

Meja asli:

Amount of RAM in the System     Recommended Amount of Swap Space
4GB of RAM or less              a minimum of 2GB of swap space
4GB to 16GB of RAM              a minimum of 4GB of swap space
16GB to 64GB of RAM             a minimum of 8GB of swap space
64GB to 256GB of RAM            a minimum of 16GB of swap space
256GB to 512GB of RAM           a minimum of 32GB of swap space 
12
ubiquibacon

Tergantung pada apa yang Anda lakukan dengannya. Dengan beban kerja yang sesuai, Anda sebenarnya tidak memerlukan ruang swap apa pun, apakah Anda memiliki RAM 16MB atau 16384MB; memang sebagian besar perangkat Linux tertanam berjalan tanpa (apa yang akan mereka tukarkan?)

Mempertimbangkan RAM harga, Anda mungkin tidak akan menggunakan swap untuk perhitungan aktif. Jadi, apa yang tersisa?

  1. Pada desktop, swap space digunakan untuk suspend-to-disk. Ruang swap ini harus sekitar 1 × RAM, tergantung pada seberapa baik isi memori dikompres.
  2. Mengizinkan tugas tidak aktif dihapus dari RAM untuk membuat lebih banyak ruang untuk cache disk
  3. Sama, tetapi untuk memungkinkan proses aktif menggunakannya untuk heap/stack

(2) dan (3) sangat tergantung pada beban kerja. Di desktop saya, saya dapat dengan mudah menggunakan 4GB + on (2), dari membiarkan vims, xterms, dll berjalan di desktop lain.

Pada sebagian besar server yang saya jalankan, hampir tidak pernah ada yang bertukar dan swap 1-2 GB (terlepas dari jumlah RAM) tampaknya OK.

8
derobert

Yah, itu tergantung pada layanan dan aplikasi apa yang Anda rencanakan untuk dijalankan. Anda dapat menonton penggunaan memori Anda dengan gratis -m dan menyesuaikan partisi swap Anda sesuai dengan waktu.

Inilah diskusi menarik pada subjek. Secara pribadi (dan setelah membaca diskusi itu) saya masih menyisakan sekitar 1 GB untuk swap.

4
Ivan

Swap space dapat berfungsi sebagai "padding" saat Anda kehabisan memori segera.

Ketika sebuah proses mengkonsumsi semua yang tersedia RAM dan kemudian beberapa mesin akan berjalan sangat lambat, tetapi Anda biasanya akan dapat pulih. Ini juga akan lebih mudah untuk melihat proses mana yang menyebabkan masalah. .

2
starblue

Saya tidak dapat berbicara dengan Debian secara langsung, tetapi saya tahu bahwa ketika Anda mendapatkan di atas 2 GB RAM, persamaan 2xRAM yang asli berubah, biasanya turun menjadi 1xRAM. Saya pikir setelah Anda menekan 16 GB RAM saran lebih rendah lagi menjadi .75xRAM.

Tentu saja, saya menemukan ini benar untuk Solaris, dan sebenarnya adalah metrik yang digunakan untuk instalasi Oracle, jadi YMMV tergantung pada aplikasi yang akan Anda jalankan di sana.

2
Milner

Saya selalu melakukan swap (setidaknya) sebanyak RAM. Kalau-kalau saya ingin hibernasi mesin suatu hari. Dapat bekerja dengan lebih sedikit, tetapi bisa juga tidak.

Ruang HDD murah hari ini, oleh karena itu saya tidak ragu memberikan ruang swap.

2
Martin C.

Selama bertahun-tahun saya telah mengikuti aturan bahwa untuk mesin Windows Anda memiliki swap lebih banyak dari RAM Anda ... Di Novell kita akan menyetel swap lebih tinggi jika kita memiliki lebih banyak printer ... Untuk linux aturan dan praktiknya untuk saya adalah 1GB swap untuk setiap 2GB RAM yang Anda miliki. Dan Anda letakkan di bagian depan disk sehingga diakses lebih cepat.

  • Jika ini adalah gateway email/spam, saya menggunakan swap dua kali lipat ke RAM
  • Jika itu adalah * server saya tidak menggunakan swap sama sekali
  • jika itu adalah server LAMP aturan 1/2 berlaku.

  • Mileage akan bervariasi tergantung pada aplikasi dan penggunaan GUI.

1
Thomas Denton

Saya hanya menggunakan token swap kecil (biasanya 256 MB, tetapi saya bahkan sudah melakukan 64 MB) karena mengkonfigurasi sistem dengan zero swap memerlukan konfigurasi khusus.

Ruang disk murah, tapi slooooooooow. Segera setelah sistem mulai bertukar, kinerja adalah nol. Dan RAM tidak lagi begitu mahal.

Percayalah, beli prosesor yang sedikit lebih lambat dan beli lebih banyak RAM. 2,8 GHz bukannya 3,0 GHz akan menghemat cukup uang untuk membeli RAM 2 GB, setidaknya.

0
Maneesh Kasera

Saya membuat swap 1GB dan membeli lebih banyak RAM yang kedua digunakan. Anda tidak benar-benar membutuhkan swap pada komputer modern, RAM sangat murah.

0
Adam Gibbins

Untuk apa Anda menggunakan sistem ini? Secara pribadi saya tidak menggunakan swap apa pun. Jika ada yang menggunakan token 512MB atau sesuatu hanya supaya sesuatu bisa dimasukkan ke disk jika tetap tetapi tidak aktif untuk waktu yang lama.

0
Mike McQuaid