เบŠเบธเบ”เบ‚เบญเบ‡ patches เป„เบ”เป‰เบ–เบทเบเบˆเบฑเบ”เบžเบตเบกเบกเบฒเบ—เบตเปˆเป€เบฅเบฑเปˆเบ‡เบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡เบ‚เบญเบ‡ Linux kernel เป‚เบ”เบ 50-80%

ะ˜ะฝะณะพ ะœะพะปะฝะฐั€ (Ingo Molnar), ะธะทะฒะตัั‚ะฝั‹ะน ั€ะฐะทั€ะฐะฑะพั‚ั‡ะธะบ Linux ัะดั€ะฐ ะธ ะฐะฒั‚ะพั€ ะฟะปะฐะฝะธั€ะพะฒั‰ะธะบะฐ ะทะฐะดะฐั‡ CFS (Completely Fair Scheduler), ะฟั€ะตะดะปะพะถะธะป ะดะปั ะพะฑััƒะถะดะตะฝะธั ะฒ ัะฟะธัะบะต ั€ะฐััั‹ะปะบะธ ั€ะฐะทั€ะฐะฑะพั‚ั‡ะธะบะพะฒ ัะดั€ะฐ Linux ัะตั€ะธัŽ ะฟะฐั‚ั‡ะตะน, ะทะฐั‚ั€ะฐะณะธะฒะฐัŽั‰ะธั… ะฑะพะปะตะต ะฟะพะปะพะฒะธะฝั‹ ะฒัะตั… ั„ะฐะนะปะพะฒ ะฒ ะธัั…ะพะดะฝั‹ั… ั‚ะตะบัั‚ะฐั… ัะดั€ะฐ ะธ ะพะฑะตัะฟะตั‡ะธะฒะฐัŽั‰ะธั… ัƒะฒะตะปะธั‡ะตะฝะธะต ัะบะพั€ะพัั‚ะธ ะฟะพะปะฝะพะน ะฟะตั€ะตัะฑะพั€ะบะธ ัะดั€ะฐ ะฝะฐ 50-80% ะฒ ะทะฐะฒะธัะธะผะพัั‚ะธ ะพั‚ ะฝะฐัั‚ั€ะพะตะบ. ะ ะตะฐะปะธะทะพะฒะฐะฝะฝะฐั ะพะฟั‚ะธะผะธะทะฐั†ะธั ะฟั€ะธะผะตั‡ะฐั‚ะตะปัŒะฝะฐ ั‚ะตะผ, ั‡ั‚ะพ ะพะฝะฐ ัะพะฟั€ัะถะตะฝะฐ ั ะดะพะฑะฐะฒะปะตะฝะธะตะผ ัะฐะผะพะณะพ ะบั€ัƒะฟะฝะพะณะพ ะฒ ะธัั‚ะพั€ะธะธ ั€ะฐะทั€ะฐะฑะพั‚ะบะธ ัะดั€ะฐ ะฝะฐะฑะพั€ะฐ ะธะทะผะตะฝะตะฝะธะน โ€” ะดะปั ะฒะบะปัŽั‡ะตะฝะธั ั€ะฐะทะพะผ ะฟั€ะตะดะปะพะถะตะฝะพ 2297 ะฟะฐั‚ั‡ะตะน, ะผะตะฝััŽั‰ะธั… ะฑะพะปะตะต 25 ั‚ั‹ััั‡ ั„ะฐะนะปะพะฒ (10 ั‚ั‹ััั‡ ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ ะฒ ะบะฐั‚ะฐะปะพะณะฐั… ยซinclude/ยป ะธ ยซarch/*/include/ยป ะธ 15 ั‚ั‹ััั‡ ั„ะฐะนะปะพะฒ ั ะธัั…ะพะดะฝั‹ะผะธ ั‚ะตะบัั‚ะฐะผะธ).

ะŸั€ะธั€ะพัั‚ ะฟั€ะพะธะทะฒะพะดะธั‚ะตะปัŒะฝะพัั‚ะธ ะดะพัั‚ะธะณะฐะตั‚ัั ะทะฐ ัั‡ั‘ั‚ ะธะทะผะตะฝะตะฝะธั ะผะตั‚ะพะดะฐ ะพะฑั€ะฐะฑะพั‚ะบะธ ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ. ะžั‚ะผะตั‡ะฐะตั‚ัั, ั‡ั‚ะพ ะทะฐ ั‚ั€ะธะดั†ะฐั‚ัŒ ะปะตั‚ ั€ะฐะทั€ะฐะฑะพั‚ะบะธ ัะดั€ะฐ ัะพัั‚ะพัะฝะธะต ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ ะฟั€ะธะฝัะปะพ ัƒะดั€ัƒั‡ะฐัŽั‰ะธะน ะฒะธะด ะธะท-ะทะฐ ะฝะฐะปะธั‡ะธั ะฑะพะปัŒัˆะพะณะพ ั‡ะธัะปะฐ ะฟะตั€ะตะบั€ั‘ัั‚ะฝั‹ั… ะทะฐะฒะธัะธะผะพัั‚ะตะน ะผะตะถะดัƒ ั„ะฐะนะปะฐะผะธ. ะ ะฐะฑะพั‚ะฐ ะฝะฐะด ั€ะตัั‚ั€ัƒะบั‚ัƒั€ะธะทะฐั†ะธะตะน ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ ะทะฐะฝัะปะฐ ะฑะพะปะตะต ะณะพะดะฐ ะธ ะฟะพั‚ั€ะตะฑะพะฒะฐะปะฐ ะฟั€ะพะฒะตะดะตะฝะธั ะทะฝะฐั‡ะธั‚ะตะปัŒะฝะพะน ะฟะตั€ะตั€ะฐะฑะพั‚ะบะธ ะธะตั€ะฐั€ั…ะธะธ ะธ ะทะฐะฒะธัะธะผะพัั‚ะตะน. ะ’ ั…ะพะดะต ั€ะตัั‚ั€ัƒะบั‚ัƒั€ะธะทะฐั†ะธะธ ะฑั‹ะปะฐ ะฒั‹ะฟะพะปะฝะตะฝะฐ ั€ะฐะฑะพั‚ะฐ ะฟะพ ั€ะฐะทะดะตะปะตะฝะธัŽ ะพะฟั€ะตะดะตะปะตะฝะธะน ั‚ะธะฟะพะฒ ะธ API ะดะปั ั€ะฐะทะฝั‹ั… ะฟะพะดัะธัั‚ะตะผ ัะดั€ะฐ.

ะกั€ะตะดะธ ะฒะฝะตัั‘ะฝะฝั‹ั… ะธะทะผะตะฝะตะฝะธะน: ะพั‚ะดะตะปะตะฝะธะต ะฒั‹ัะพะบะพัƒั€ะพะฒะฝะตะฒั‹ั… ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ ะดั€ัƒะณ ะพั‚ ะดั€ัƒะณะฐ, ะธัะบะปัŽั‡ะตะฝะธะต ัะฒัะทั‹ะฒะฐัŽั‰ะธั… ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ะต ั„ะฐะนะปั‹ inline-ั„ัƒะฝะบั†ะธะน, ะฒั‹ะดะตะปะตะฝะธะต ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ ะดะปั ั‚ะธะฟะพะฒ ะธ API, ะพะฑะตัะฟะตั‡ะตะฝะธะต ะพะฑะพัะพะฑะปะตะฝะฝะพะน ัะฑะพั€ะบะธ ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ (ะพะบะพะปะพ 80 ั„ะฐะนะปะพะฒ ะธะผะตะปะธ ะผะตัˆะฐัŽั‰ะธะต ัะฑะพั€ะบะต ะฝะตะฟั€ัะผั‹ะต ะทะฐะฒะธัะธะผะพัั‚ะธ, ะฒั‹ัั‚ะฐะฒะปัะตะผั‹ะต ั‡ะตั€ะตะท ะดั€ัƒะณะธะต ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ะต ั„ะฐะนะปั‹), ะฐะฒั‚ะพะผะฐั‚ะธั‡ะตัะบะพะต ะดะพะฑะฐะฒะปะตะฝะธะต ะทะฐะฒะธัะธะผะพัั‚ะตะน ะบ ั„ะฐะนะปะฐะผ ยซ.hยป ะธ ยซ.cยป, ะฟะพัˆะฐะณะพะฒะฐั ะพะฟั‚ะธะผะธะทะฐั†ะธั ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ, ะธัะฟะพะปัŒะทะพะฒะฐะฝะธะต ั€ะตะถะธะผะฐ ยซCONFIG_KALLSYMS_FAST=yยป, ะฒั‹ะฑะพั€ะพั‡ะฝะฐั ะบะพะฝัะพะปะธะดะฐั†ะธั ะกะธ-ั„ะฐะนะปะพะฒ ะฒ ัะฑะพั€ะพั‡ะฝั‹ะต ะฑะปะพะบะธ ะดะปั ัะฝะธะถะตะฝะธั ั‡ะธัะปะฐ ะพะฑัŠะตะบั‚ะฝั‹ั… ั„ะฐะนะปะพะฒ.

ะ’ ะธั‚ะพะณะต, ะฟั€ะพะดะตะปะฐะฝะฝะฐั ั€ะฐะฑะพั‚ะฐ ะฟะพะทะฒะพะปะธะปะฐ ะฝะฐ 1-2 ะฟะพั€ัะดะบะฐ ัะพะบั€ะฐั‚ะธั‚ัŒ ั€ะฐะทะผะตั€ ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ, ะพะฑั€ะฐะฑะฐั‚ั‹ะฒะฐะตะผั‹ั… ะฝะฐ ัั‚ะฐะดะธะธ ะฟะพัั‚ะฟั€ะตะฟั€ะพั†ะตััะธะฝะณะฐ. ะะฐะฟั€ะธะผะตั€, ะดะพ ะพะฟั‚ะธะผะธะทะฐั†ะธะธ ะธัะฟะพะปัŒะทะพะฒะฐะฝะธะต ะทะฐะณะพะปะพะฒะพั‡ะฝะพะณะพ ั„ะฐะนะปะฐ ยซlinux/gfp.hยป ะฟั€ะธะฒะพะดะธะปะพ ะบ ะดะพะฑะฐะฒะปะตะฝะธัŽ 13543 ัั‚ั€ะพะบ ะบะพะดะฐ ะธ ะฟะพะดะบะปัŽั‡ะตะฝะธั 303 ะทะฐะฒะธัะธะผั‹ั… ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ, ะฐ ะฟะพัะปะต ะพะฟั‚ะธะผะธะทะฐั†ะธะธ ั€ะฐะทะผะตั€ ัะพะบั€ะฐั‚ะธะปัั ะดะพ 181 ัั‚ั€ะพะบ ะธ 26 ะทะฐะฒะธัะธะผั‹ั… ั„ะฐะนะปะพะฒ. ะ˜ะปะธ ะดั€ัƒะณะพะน ะฟั€ะธะผะตั€: ะฟั€ะธ ะฟั€ะตะฟั€ะพั†ะตััะธะฝะณะต ั„ะฐะนะปะฐ ยซkernel/pid.cยป ะฑะตะท ะฟะฐั‚ั‡ะฐ ะฟะพะดะบะปัŽั‡ะฐะตั‚ัั 94 ั‚ั‹ััั‡ ัั‚ั€ะพะบ ะบะพะดะฐ, ะฑะพะปัŒัˆะฐั ั‡ะฐัั‚ัŒ ะบะพั‚ะพั€ะพะณะพ ะฝะต ะธัะฟะพะปัŒะทัƒะตั‚ัั ะฒ pid.c. ะ ะฐะทะดะตะปะตะฝะธะต ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ั… ั„ะฐะนะปะพะฒ ะฟะพะทะฒะพะปะธะปะพ ัะฝะธะทะธั‚ัŒ ะพะฑัŠะตะผ ะพะฑั€ะฐะฑะฐั‚ั‹ะฒะฐะตะผะพะณะพ ะบะพะดะฐ ะฒ ั‚ั€ะธ ั€ะฐะทะฐ, ัะพะบั€ะฐั‚ะธะฒ ั‡ะธัะปะพ ะพะฑั€ะฐะฑะฐั‚ั‹ะฒะฐะตะผั‹ั… ัั‚ั€ะพะบ ะดะพ 36 ั‚ั‹ััั‡.

ะŸั€ะธ ะฟะพะปะฝะพะน ะฟะตั€ะตัะฑะพั€ะบะต ัะดั€ะฐ ะบะพะผะฐะฝะดะพะน ยซmake -j96 vmlinuxยป ะฝะฐ ั‚ะตัั‚ะพะฒะพะน ัะธัั‚ะตะผ ะฟั€ะธะผะตะฝะตะฝะธะต ะฟะฐั‚ั‡ะตะน ะฟะพะบะฐะทะฐะปะพ ัะพะบั€ะฐั‰ะตะฝะธะต ะฒั€ะตะผะตะฝะธ ัะฑะพั€ะบะธ ะฒะตั‚ะบะธ v5.16-rc7 ั 231.34 ะดะพ 129.97 ัะตะบัƒะฝะด (ั 15.5 ะดะพ 27.7 ัะฑะพั€ะพะบ ะฒ ั‡ะฐั), ะฐ ั‚ะฐะบะถะต ะฟะพะฒั‹ัะธะปะพ ัั„ั„ะตะบั‚ะธะฒะฝะพัั‚ัŒ ะธัะฟะพะปัŒะทะพะฒะฐะฝะธั ัะดะตั€ CPU ะฒะพ ะฒั€ะตะผั ัะฑะพั€ะบะธ. ะŸั€ะธ ะธะฝะบั€ะตะผะตะฝั‚ะฐะปัŒะฝะพะน ัะฑะพั€ะบะต ัั„ั„ะตะบั‚ ะพั‚ ะพะฟั‚ะธะผะธะทะฐั†ะธะธ ะตั‰ั‘ ะฑะพะปะตะต ะทะฐะผะตั‚ะตะฝ โ€” ะฒั€ะตะผั ะฟะพะฒั‚ะพั€ะฝะพะน ะฟะตั€ะตัะฑะพั€ะบะธ ัะดั€ะฐ ะฟะพัะปะต ะฒะฝะตัะตะฝะธั ะธะทะผะตะฝะตะฝะธะน ะฒ ะทะฐะณะพะปะพะฒะพั‡ะฝั‹ะต ั„ะฐะนะปั‹ ัะพะบั€ะฐั‚ะธะปะพััŒ ะฒ ั€ะฐะทั‹ (ะพั‚ 112% ะดะพ 173% ะฒ ะทะฐะฒะธัะธะผะพัั‚ะธ ะพั‚ ะธะทะผะตะฝัะตะผะพะณะพ ะทะฐะณะพะปะพะฒะพั‡ะฝะพะณะพ ั„ะฐะนะปะฐ). ะžะฟั‚ะธะผะธะทะฐั†ะธะธ ะฟะพะบะฐ ะดะพัั‚ัƒะฟะฝั‹ ั‚ะพะปัŒะบะพ ะดะปั ะฐั€ั…ะธั‚ะตะบั‚ัƒั€ ARM64, MIPS, Sparc ะธ x86 (32- ะธ 64-ะฑะธั‚).

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: opennet.ru

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™