Serangkaian tambalan”permintaan untuk komentar”yang diposting hari ini ke milis kernel Linux mengimplementasikan dukungan untuk kebijakan penjadwal CPU untuk diimplementasikan sebagai (e) program BPF.
Kernel Linux telah melihat adopsi berkelanjutan dari (e)BPF ke berbagai area kernel. Salah satu tambahan eBPF yang akan segera hadir adalah dukungan eBPF yang datang ke subsistem HID untuk menangani perangkat keras unik dengan lebih baik secara lebih tepat waktu dan diharapkan mengurangi churn driver yang berlebihan.
Tejun Heo mengumumkan pekerjaan penjadwal eBPF hari ini sebagai bagian dari pekerjaan dia dan beberapa pengembang kernel lainnya. Keyakinannya adalah bahwa dengan dukungan eBPF untuk penjadwal kernel Linux, ini dapat memudahkan percobaan dan eksplorasi kebijakan penjadwalan baru, memungkinkan penjadwal khusus aplikasi dan opsi lain yang dapat disesuaikan melalui pemuatan program BPF khusus, dan menyediakan cara yang tidak mengganggu untuk mengubah keluar kebijakan penjadwalan dalam lingkungan produksi.
Insinyur dari Google dan Meta (Facebook) berada di belakang inisiatif ini. Sebagai kesimpulan untuk seri tambalan RFC hari ini:
“Baik Meta dan Google telah bereksperimen cukup banyak dengan penjadwal dalam beberapa tahun terakhir. Google telah membandingkan berbagai beban kerja menggunakan penjadwalan ruang pengguna, dan telah meraih keunggulan kinerja melalui perdagangan off generality untuk kebutuhan khusus aplikasi. Di Meta, kami belum menerapkan sched_ext pada beban kerja produksi apa pun, meskipun eksperimen awal kami menunjukkan bahwa sched_ext akan memberikan keunggulan kinerja yang signifikan saat diterapkan dalam skala besar. Jika berhasil di-upstream, kami berharap dapat memanfaatkannya secara ekstensif untuk menjalankan berbagai eksperimen dan mengembangkan penjadwal yang disesuaikan untuk sejumlah beban kerja penting.
Sebagai penutup, baik Meta maupun Google percaya bahwa sched_ext akan secara signifikan mengembangkan cara komunitas yang lebih luas menjelajahi ruang masalah penjadwalan, memberdayakan peningkatan berkelanjutan pada penjadwal dalam kernel, sementara juga mengaktifkan kebijakan bertarget untuk aplikasi khusus. Kami akan dapat bereksperimen dengan lebih mudah dan cepat eh, jelajahi area yang belum dipetakan, dan gunakan perubahan penjadwal darurat bila perlu. Hal yang sama berlaku untuk siapa saja yang ingin bekerja dengan penjadwal, termasuk akademisi dan industri khusus. sched_ext akan mendorong kecanggihan dalam hal penjadwalan dan kinerja di Linux.”
Sebagai bagian dari tambalan hari ini, selain mengerjakan infrastruktur penjadwal eBPF, ada contoh penjadwal yang menunjukkan sebagian besar keputusan penjadwalan ditangguhkan ke ruang pengguna. Penjadwal demonstrasi lainnya adalah pendekatan hibrid di mana keputusan penyeimbangan muatan dibuat di ruang pengguna dan kode tersebut ditulis dalam bahasa pemrograman Rust.
Detail lebih lanjut tentang proposal yang sangat menarik ini melalui seri patch RFC.