Patch versi kedua dengan restrukturisasi file header kernel Linux

Ingo Molnar telah merilis versi kedua dari serangkaian patch yang secara signifikan mengurangi waktu kompilasi kernel dengan merestrukturisasi hierarki file header dan mengurangi ketergantungan silang. Dibandingkan dengan versi pertama yang dirilis beberapa hari yang lalu, versi baru ini diadaptasi untuk kernel 5.16-rc8, menambahkan optimasi tambahan, dan mengimplementasikan dukungan untuk kompilasi dengan kompiler Clang. Dengan menggunakan Clang, penerapan patch mengurangi waktu kompilasi sebesar 88%, atau 77% dalam penggunaan CPU. Rekonstruksi kernel penuh menggunakan perintah "make -j96 vmlinux" mengurangi waktu kompilasi dari 337.788 menjadi 179.773 detik.

Versi baru ini juga menyelesaikan masalah dengan plugin GCC, memperbaiki kesalahan yang diidentifikasi selama tinjauan awal, dan menyatukan deklarasi duplikat dari struktur "task_struct_per_task". Selain itu, optimasi file header linux/sched.h telah dilanjutkan, dan optimasi telah diimplementasikan untuk file header subsistem RDMA (infiniband), yang selanjutnya mengurangi waktu kompilasi sebesar 9% dibandingkan dengan rilis patch pertama. Jumlah file C kernel yang menyertakan file header linux/sched.h telah dikurangi dari 68% menjadi 36% dibandingkan dengan rilis patch pertama (dari 99% menjadi 36% dibandingkan dengan kernel asli).

Sumber: opennet.ru