Pengembang kernel Linux veteran Peter Zijlstra sedang berupaya untuk menyelesaikan pekerjaan fitur di sekitar kode penjadwal kernel EEVDF.
EEVDF adalah kependekan dari “Earliest Eligible Virtual Deadline First” dan desainnya didasarkan pada halaman penelitian dari akhir tahun 90an. EEVDF digabungkan kembali di Linux 6.6 untuk menggantikan sebagian besar kode penjadwal CFS. Sekarang seri patch baru dari Zijlstra bertujuan untuk “menyelesaikan” pekerjaan pada fungsionalitas EEVDF untuk kode ini yang kemungkinan akan di-upstream untuk Linux 6.10.
Peter Zijlstra menjelaskan dalam jadwal/pekan raya hari ini: Seri patch EEVDF lengkap:
Saya perlahan merangkak keluar dari lubang dan mencoba kembali bekerja. Ketersediaan masih rendah di pihak saya, tetapi saya akan mencoba dan membalas beberapa email.
Bagaimanapun, agar kaki saya basah lagi karena duduk di belakang komputer, temukan di sini beberapa patch yang secara fungsional melengkapi perjalanan EEVDF.
Ini termasuk antarmuka baru yang memperlihatkan parameter tambahan yang dimiliki EEVDF. Saya telah memilih untuk menggunakan sched_attr::sched_runtime untuk ini dengan nilai yang bagus karena beberapa beban kerja benar-benar mengetahui panjang irisannya (dapat diukur secara dinamis dengan cara yang sama seperti untuk tenggat waktu menggunakan CLOCK_THREAD_CPUTIME_ID) dan menggunakan ukuran permintaan sebenarnya jauh lebih banyak efektif daripada beberapa ukuran relatif.
[[ menggunakan ukuran permintaan yang terlalu pendek akan meningkatkan overhead preemption pekerjaan, menggunakan ukuran permintaan yang terlalu panjang akan mengurangi ketepatan waktu ]]
Menurut saya, keseluruhan masalah dequeue tertunda adalah hal mendasar yang hilang dari makalah EEVDF. Tanpa hal seperti ini, EEVDF tidak akan berfungsi dengan baik. IIRC, hal ini disebutkan kepada saya bertahun-tahun yang lalu ketika orang-orang bekerja di BFQ iosched dan mengalami masalah yang sama. Waktu telah menghapus aspek penting dari catatan ini dan saya harus menemukannya kembali.
Selain itu, menurut saya Ben menyatakan keprihatinannya bahwa mempertahankan kelambatan dalam jangka waktu yang lama tidak masuk akal di masa lalu.
Implementasi yang disajikan di sini adalah implementasi yang harus bekerja dengan kekacauan cgroup kami dan menjaga sebagian besar hal buruk di dalam fair.c tidak seperti versi sebelumnya yang memuntahkan seluruh kode penjadwal inti.
Pelambatan cfs-cgroup secara kritis tidak diuji, dan cgroups hanya diuji sejauh ini sehingga mesin yang terinfeksi systemd sekarang melakukan booting (membutuhkan waktu sedikit).
Selain itu, ia bekerja cukup baik untuk membangun kernel berikutnya dan lolos beberapa tes latency-slice sepele yang saya jalankan.
Bagaimanapun, silakan lihat dan beri tahu saya…Jadi jika semuanya berjalan dengan baik, Linux 6.10 akan membuat kode penjadwal EEEVDF berfungsi lengkap.
Itulah berita seputar Patch Penjadwal Linux EEVDF Baru Membuatnya Secara Fungsional “Lengkap”, semoga bermanfaat. Disadur dari Phoronix.com.