ื”ื’ืจืกื” ื”ืฉื ื™ื™ื” ืฉืœ ืชื™ืงื•ื ื™ื ืขื ืžื‘ื ื” ืžื—ื“ืฉ ืฉืœ ืงื‘ืฆื™ ื›ื•ืชืจื•ืช ืœื™ื‘ืช ืœื™ื ื•ืงืก

Ingo Molnar ื”ืฆื™ื’ ืืช ื”ื’ืจืกื” ื”ืฉื ื™ื™ื” ืฉืœ ืงื‘ื•ืฆืช ืชื™ืงื•ื ื™ื ืฉื™ื›ื•ืœื” ืœืฆืžืฆื ืžืฉืžืขื•ืชื™ืช ืืช ื–ืžืŸ ื”ื‘ื ื™ื™ื” ืžื—ื“ืฉ ืฉืœ ื”ืœื™ื‘ื” ืขืœ ื™ื“ื™ ืืจื’ื•ืŸ ืžื—ื“ืฉ ืฉืœ ื”ื”ื™ืจืจื›ื™ื” ืฉืœ ืงื‘ืฆื™ ื”-header ื•ื”ืคื—ืชืช ืžืกืคืจ ื”ืชืœื•ืช ื”ืฆื•ืœื‘ืช. ื”ื’ืจืกื” ื”ื—ื“ืฉื” ื ื‘ื“ืœืช ืžื”ื’ืจืกื” ื”ืจืืฉื•ื ื” ืฉื”ื•ืฆืขื” ืœืคื ื™ ืžืกืคืจ ื™ืžื™ื ื‘ื›ืš ืฉื”ื™ื ืžื•ืชืืžืช ืœืงืจื ืœ 5.16-rc8, ื”ื•ืกืคืช ืื•ืคื˜ื™ืžื™ื–ืฆื™ื•ืช ื ื•ืกืคื•ืช ื•ื”ื˜ืžืขืช ืชืžื™ื›ื” ื‘ื‘ื ื™ื™ื” ื‘ืืžืฆืขื•ืช ืžื”ื“ืจ Clang. ื‘ืขืช ืฉื™ืžื•ืฉ ื‘-Clang, ื”ื—ืœืช ืชื™ืงื•ื ื™ื ื”ืคื—ื™ืชื” ืืช ื–ืžืŸ ื”ื‘ื ื™ื™ื” ื‘-88% ืื• 77% ื‘ืžื•ื ื—ื™ื ืฉืœ ืฆืจื™ื›ืช ืžืฉืื‘ื™ CPU. ื›ืืฉืจ ื‘ื•ื ื™ื ืžื—ื“ืฉ ืืช ื”ืœื™ื‘ื” ืขื ื”ืคืงื•ื“ื” "make -j96 vmlinux", ื–ืžืŸ ื”ื‘ื ื™ื™ื” ื”ืฆื˜ืžืฆื ืž-337.788 ืœ-179.773 ืฉื ื™ื•ืช.

ื”ื’ืจืกื” ื”ื—ื“ืฉื” ื’ื ืคื•ืชืจืช ืืช ื”ื‘ืขื™ื” ืขื ืชื•ืกืคื™ื ืฉืœ GCC, ืžืชืงื ืช ืฉื’ื™ืื•ืช ืฉื–ื•ื”ื• ื‘ืžื”ืœืš ืชื”ืœื™ืš ื”ื‘ื“ื™ืงื” ื”ืจืืฉื•ื ื™, ื•ืžืื—ื“ืช ื”ืฆื”ืจื•ืช ื›ืคื•ืœื•ืช ืฉืœ ืžื‘ื ื” "task_struct_per_task". ื‘ื ื•ืกืฃ, ื ืžืฉื›ื” ื”ืื•ืคื˜ื™ืžื™ื–ืฆื™ื” ืฉืœ ืงื•ื‘ืฅ ื”-header linux/sched.h ื•ื”ื•ื˜ืžืขื” ืื•ืคื˜ื™ืžื™ื–ืฆื™ื” ืฉืœ ืงื‘ืฆื™ ื”-header ืฉืœ ืชืช-ื”ืžืขืจื›ืช RDMA (infiniband), ืžื” ืฉืื™ืคืฉืจ ืœื”ืคื—ื™ืช ืขื•ื“ ื™ื•ืชืจ ืืช ื–ืžืŸ ื”ื‘ื ื™ื™ื” ื‘-9% ื‘ื”ืฉื•ื•ืื” ืœื’ืจืกื” ื”ืจืืฉื•ื ื”. ืฉืœ ื”ื˜ืœืื™ื. ืžืกืคืจ ืงื‘ืฆื™ ื”ืงืจื ืœ C ื”ื›ื•ืœืœื™ื ืืช ืงื•ื‘ืฅ ื”ื›ื•ืชืจืช linux/sched.h ื”ืฆื˜ืžืฆื ืž-68% ืœ-36% ื‘ื”ืฉื•ื•ืื” ืœื’ืจืกื” ื”ืจืืฉื•ื ื” ืฉืœ ื”ืชื™ืงื•ื ื™ื (ืž-99% ืœ-36% ื‘ื”ืฉื•ื•ืื” ืœื’ืจืขื™ืŸ ื”ืžืงื•ืจื™).

ืžืงื•ืจ: OpenNet.ru

ื”ื•ืกืคืช ืชื’ื•ื‘ื”