Patch versi kedua dengan restrukturisasi file header kernel Linux

Ingo Molnar menyajikan versi kedua dari serangkaian tambalan yang dapat secara signifikan mengurangi waktu pembangunan kembali kernel dengan merestrukturisasi hierarki file header dan mengurangi jumlah ketergantungan silang. Versi baru ini berbeda dari versi pertama yang diusulkan beberapa hari lalu dengan diadaptasi untuk kernel 5.16-rc8, menambahkan optimasi tambahan dan menerapkan dukungan untuk pembangunan menggunakan kompiler Clang. Saat menggunakan Clang, penerapan patch mengurangi waktu build sebesar 88% atau 77% dalam hal konsumsi sumber daya CPU. Ketika kernel dibangun kembali sepenuhnya dengan perintah “make -j96 vmlinux,” waktu build berkurang dari 337.788 menjadi 179.773 detik.

Versi baru ini juga memecahkan masalah dengan plugin GCC, memperbaiki kesalahan yang diidentifikasi selama proses peninjauan awal, dan menyatukan deklarasi duplikat dari struktur “task_struct_per_task”. Selain itu, optimalisasi file header linux/sched.h dilanjutkan dan optimalisasi file header subsistem RDMA (infiniband) diterapkan, yang memungkinkan pengurangan waktu build lebih lanjut sebesar 9% dibandingkan versi pertama. dari tambalan. Jumlah file kernel C yang menyertakan file header linux/sched.h telah dikurangi dari 68% menjadi 36% dibandingkan dengan patch versi pertama (dari 99% menjadi 36% dibandingkan dengan kernel asli).

Sumber: opennet.ru

Tambah komentar