Ada begitu banyak alasan untuk memiliki banyak area swap (tidak harus berupa file), bahkan jika Anda hanya memiliki satu poros.
20-20 tinjau balik: Anda menggunakan mesin dengan area swap tunggal, kemudian akhirnya menyadari itu tidak cukup. Anda tidak dapat menggunakan kembali mesin sesuka hati, tetapi Anda dapat membuat area swap lain (mungkin file) hingga mengulang tata letak partisi menjadi opsi.
Mengubah ukuran atau memindahkan area swap: Anda tidak dapat mengubah ukuran area swap (seperti yang disebutkan oleh Evan Teitelman ). Dan Anda tidak bisa swapoff
, membuat area swap baru dan kemudian swapon
lagi kecuali Anda memiliki cukup RAM: swapoff
ingin memindahkan semua halaman yang diganti ke RAM sebelum melepaskan area swap. Jadi Anda membuat area swap sementara, swapoff
yang asli, tunggu sampai semua halaman telah berpindah dari area swap yang lama ke yang sementara, ubah ukuran partisi swap aslinya mkswap
, lalu swapon
yang diubah ukurannya dan swapoff
yang sementara. Halaman yang ditukar disalin dari area swap sementara ke yang diubah ukurannya, dan Anda selesai. Jika Anda memindahkan area swap, Anda bahkan tidak memerlukan area sementara. mkswap
yang baru swapon
, laluswapoff
yang lama dan semuanya bergerak.
Swapping cepat gila: disk modern menggunakan perekaman bit zona . Zona pertama disk adalah yang tercepat. Anda mungkin ingin mengukur disk, dan membuat partisi yang menutupi zona drive tercepat pertama. Ini mungkin lebih kecil dari ukuran swap yang Anda maksudkan. Jadi, Anda menambahkan beberapa partisi pada beberapa disk, menggunakan teknik yang sama.
Swapping cepat gila, sekuelnya: sebagai alternatif, setelah Anda tahu di mana zona tercepat disk Anda, Anda dapat membuat area swap prioritas tinggi di zona pertama, area swap prioritas lebih rendah di zona kedua, dll. Dengan cara ini sistem swapping Anda secara otomatis tahu untuk memuat keseimbangan di semua zona disk cepat, pilih zona yang lebih cepat, dan gunakan zona yang lebih lambat sebagai area meluap saat dibutuhkan.
Penyeimbangan beban simetris: pada sistem yang dibangun dengan baik dengan banyak spindel (seperti server), saya ingin memiliki beberapa partisi swap yang menempati awal setiap disk (untuk memanfaatkan perekaman bit zona ). Mereka semua memiliki prioritas yang identik, sehingga kernel akan memuat-menyeimbangkan swap. Satu spindle mungkin memberi Anda 100 MB / s, tetapi menukar semua spindle bisa memberi Anda kelipatan. (Berbicara naif)
Penyeimbangan beban sadar- bottleneck : dalam praktiknya, ada beberapa hambatan lainnya yang terjadi. Jadi, misalnya, server 16 disk mungkin memiliki empat port SATA 6 Gbps, masing-masing dengan pengali empat port dan empat disk berbagi bandwidth. Jika Anda mengetahui hal ini, Anda dapat mengatur ruang swap Anda sehingga Disk 1 pada Port 1-4 memiliki prioritas tertinggi, disk kedua pada port 1-4 memiliki prioritas tertinggi kedua, dll. Ini akan memuat pertukaran swap tetapi tidak membebani pengganda port.
Bertukar perangkat dengan kinerja berbeda: (seperti yang disebutkan oleh Luke) jika sistem Anda bukan server baru, dan itu tumbuh secara organik selama bertahun-tahun, mungkin perangkat itu memblokir perangkat yang secara signifikan lebih cepat daripada yang lain. Anda ingin bertukar ke perangkat tercepat terlebih dahulu, lalu ke tercepat berikutnya, dll.
Pertimbangan ukuran: ( seizin David Kohen ) mungkin menempatkan semua swap Anda di satu drive membuat beberapa pertunjukan bebas di drive (ini terdengar seperti skenario tahun 2001, tetapi ada banyak perangkat lama atau tertanam di mana ini bisa menjadi masalah). Membaginya di semua drive, dan di atas semua manfaat lainnya di atas, Anda mendapatkan penggunaan ruang disk yang lebih baik per drive. Satu hal kehilangan beberapa pertunjukan per spindle, dan satu lagi kehilangan 300 pertunjukan dari satu disk.
Keadaan darurat: Anda memiliki waktu 96 jam untuk mengirimkan tesis PhD, dan percobaan terakhir Anda (eksperimen yang cenderung memberi Anda hadiah Nobel serta huruf campuran yang funky setelah nama Anda) menyedot memori pada tingkat yang mengesankan. Anda hampir kehabisan swap. Anda membuat file swap dengan prioritas kurang dari prioritas perangkat swap utama Anda - kernel akan menggunakannya sebagai ruang swap overflow. Anda bahkan dapat menginstal swapd untuk melakukan ini untuk Anda secara otomatis, sehingga Anda juga akan memiliki banyak ruang swap untuk emacs
menjalankan besar dan LaTeX.
Bertukar di berbagai media: Linux tidak dapat bertukar ke perangkat karakter, tetapi ada banyak media, fisik dan virtual yang berbeda: SSD (catatan: Anda mungkin tidak ingin bertukar di SSD), puluhan jenis pemintalan keras yang sangat berbeda disk, disket (ya, Anda dapat bertukar di disket - Anda selalu dapat menembak diri sendiri dengan Unix), volume DRBD , iSCSI, volume LVM, partisi terenkripsi LUKS, dll (termasuk kombinasi berlapis surealis, membingungkan - swap pada LUKS pada LVM pada port paralel drive ZIP melalui iSCSI melalui IEEE802.3ad Ethernet agregat? Tidak masalah, Anda cabul kotor). Ini adalah skenario ceruk, dan dimaksudkan untuk mendukung persyaratan ceruk.
Beberapa drive disk kecepatan. Anda dapat mengatur yang lebih cepat untuk digunakan pertama diikuti oleh yang lebih lambat jika yang gagal.
sumber
Anda tidak dapat memperluas swapfile (setidaknya, sejauh yang saya tahu) atau menukar partisi saat sedang digunakan. Jika Anda hampir memenuhi area swap yang tersedia, Anda mungkin harus membuat file swap tambahan.
Juga, jika suatu sistem membutuhkan ruang swap 4GB dan memiliki dua unit penyimpanan 2GB, ia harus menggunakan setidaknya dua area swap.
sumber