Pelaksanaan DISCARD tak segerak dibentangkan untuk Btrfs

Untuk sistem fail btrfs diwakili oleh pelaksanaan tak segerak bagi operasi DISCARD (menanda blok yang dilepaskan yang tidak lagi perlu disimpan secara fizikal), dilaksanakan oleh jurutera Facebook.

Intipati masalah: dalam pelaksanaan asal, DISCARD dilaksanakan serentak dengan operasi lain, yang dalam beberapa kes membawa kepada masalah prestasi, kerana pemacu perlu menunggu arahan yang sepadan selesai, yang memerlukan masa tambahan. Ini boleh menjadi masalah jika pelaksanaan DISCARD pemacu adalah perlahan.

Dengan pelaksanaan tak segerak, tidak perlu menunggu pemacu untuk menyelesaikan DISCARD semasa operasi FS biasa, yang menghapuskan masalah dengan memindahkan operasi ini ke latar belakang. Pelaksanaan yang dibentangkan juga melakukan beberapa pengoptimuman. Sebagai contoh, ia menunggu sedikit masa kerana bimbang bahawa blok akan digunakan tidak lama lagi dengan cara yang tidak ada gunanya untuk melaksanakan prosedur DISCARD sama sekali, dan ia juga cuba untuk menggabungkan kawasan sebelum benar-benar melaksanakan DISCARD untuk mengurangkan jumlah operasi.

Sumber: opennet.ru

Tambah komen