Linux yadro sarlavhalari fayllarini qayta qurish bilan yamoqlarning ikkinchi versiyasi

Ingo Molnar sarlavha fayllari ierarxiyasini qayta tuzish va o'zaro bog'liqliklar sonini kamaytirish orqali yadroni qayta qurish vaqtini sezilarli darajada qisqartirishi mumkin bo'lgan yamoqlar to'plamining ikkinchi versiyasini taqdim etdi. Yangi versiya bir necha kun oldin taklif qilingan birinchi versiyadan 5.16-rc8 yadrosi uchun moslashtirilgani, qo'shimcha optimallashtirishlar qo'shilishi va Clang kompilyatoridan foydalangan holda qurilishni qo'llab-quvvatlashi bilan farq qiladi. Clang-dan foydalanganda, yamoqlarni qo'llash protsessor resurslarini iste'mol qilish nuqtai nazaridan qurilish vaqtini 88% yoki 77% ga qisqartirdi. "Make -j96 vmlinux" buyrug'i bilan yadroni to'liq qayta qurishda, qurish vaqti 337.788 dan 179.773 soniyagacha qisqardi.

Yangi versiya, shuningdek, GCC plaginlari bilan bog'liq muammoni hal qiladi, dastlabki ko'rib chiqish jarayonida aniqlangan xatolarni tuzatadi va "task_struct_per_task" strukturasining takroriy deklaratsiyasini birlashtiradi. Bundan tashqari, linux/sched.h sarlavha faylini optimallashtirish davom ettirildi va RDMA quyi tizimining (infiniband) sarlavha fayllarini optimallashtirish amalga oshirildi, bu esa birinchi versiyaga nisbatan qurish vaqtini yanada 9% ga qisqartirish imkonini berdi. yamoqlardan. Linux/sched.h sarlavha faylini o'z ichiga olgan yadro C fayllari soni yamoqlarning birinchi versiyasiga nisbatan 68% dan 36% gacha (asl yadroga nisbatan 99% dan 36% gacha) kamaydi.

Manba: opennet.ru

a Izoh qo'shish