Версияи дуюми часпакҳо бо таҷдиди сохтори файлҳои сарлавҳаи ядрои Linux

Инго Молнар версияи дуюми маҷмӯи часпакҳоро пешниҳод кард, ки метавонад вақти барқарорсозии ядроро тавассути таҷдиди сохтори иерархияи файлҳои сарлавҳа ва кам кардани шумораи вобастагии байниҳамдигарӣ ба таври назаррас коҳиш диҳад. Версияи нав аз версияи аввалине, ки чанд рӯз пеш пешниҳод шуда буд, бо мутобиқ шудан ба ядрои 5.16-rc8, илова кардани оптимизатсияи иловагӣ ва татбиқи дастгирии сохтмон бо истифода аз компилятори Clang фарқ мекунад. Ҳангоми истифодаи Clang, татбиқи часпакҳо вақти сохтани онро 88% ё 77% аз нуқтаи назари истеъмоли захираҳои CPU кам карданд. Ҳангоми пурра аз нав сохтани ядро ​​бо фармони "make -j96 vmlinux", вақти сохтмон аз 337.788 то 179.773 сония кам карда шуд.

Версияи нав инчунин мушкилотро бо плагинҳои GCC ҳал мекунад, хатогиҳоеро, ки дар ҷараёни баррасии ибтидоӣ муайян карда шудаанд, ислоҳ мекунад ва эъломияҳои такрории сохтори "task_struct_per_task" -ро муттаҳид мекунад. Илова бар ин, оптимизатсияи файли сарлавҳаи linux/sched.h идома ёфт ва оптимизатсияи файлҳои сарлавҳаи зерсистемаи RDMA (infiniband) амалӣ карда шуд, ки имкон дод, ки вақти сохтмон нисбат ба версияи аввал 9% кам карда шавад. аз часпакхо. Шумораи файлҳои ядрои C, ки файли сарлавҳаи linux/sched.h-ро дар бар мегиранд, нисбат ба версияи якуми часбҳо (аз 68% то 36% нисбат ба ядрои аслӣ) аз 99% то 36% кам карда шуд.

Манбаъ: opennet.ru

Илова Эзоҳ