Banyak materi di ZFS menyebutkan bahwa pada dasarnya semakin banyak memori yang bisa Anda gunakan, semakin baik. Namun, saya berencana untuk menggunakan ZFS pada notebook dengan 16GB RAM - sementara itu sudah cukup untuk ZFS, saya ingin dapat menggunakan komputer, tidak melayani file darinya; dengan kata lain, saya ingin aplikasi dapat menggunakan (setidaknya sebagian besar) memori itu, bukan implementasi sistem file.
Jadi, untuk merumuskannya sebagai pertanyaan, bagaimana saya menafsirkan persyaratan memori ZFS ketika dijalankan pada komputer yang juga menjalankan aplikasi yang tidak sensitif terhadap IO dengan penggunaan memori yang tinggi?
/sys/module/zfs/parameters/zfs_arc_max
/sys/module/zfs/parameters/zfs_arc_min
semua menunjukkan 0 untuk saya?Sementara ZFS akan menggunakan memori sebanyak yang dianggap berguna untuk melakukan cache hal-hal, itu akan mengembalikannya ke aplikasi jika ada permintaan untuk itu.
Perhatikan bahwa sistem file lain juga akan mengambil memori sebanyak yang mereka butuhkan sebagai cache. Perbedaan utama adalah bahwa memori segera tersedia untuk aplikasi. Dengan ZFS, ada sedikit keterlambatan tetapi seharusnya tidak ada bedanya kecuali Anda memiliki aplikasi yang ingin menggunakan memori lebih cepat daripada ZFS dapat melepaskannya atau yang memperhitungkan memori bebas yang dilaporkan (+ buffer / cache) dan menolak untuk memulai jika tidak cukup tersedia.
Dalam kasus seperti itu dan jika Anda tahu sebelumnya jejak memori yang dibutuhkan oleh aplikasi Anda, Anda dapat mengatur nilai tuning ukuran arc max untuk memesan beberapa RAM.
sumber
Saya menjalankan zfs di Linux di server saya dengan ram 8gb. Sesuai dengan dokumen, ia mengkonsumsi sebagian besar ram. Namun, saya perhatikan tidak ada perbedaan kinerja yang menjalankan aplikasi yang terlalu banyak memori. Tampaknya jika Anda membutuhkan memori zfs dengan senang hati menyerah untuk digunakan. Biasakan melihat memori konyol dalam persentase digunakan.
sumber