Qhov thib ob version ntawm thaj ua rau thaj nrog kev txhim kho ntawm Linux ntsiav header cov ntaub ntawv

Ingo Molnar tau nthuav tawm qhov thib ob version ntawm ib pawg thaj ua rau thaj uas tuaj yeem txo lub sijhawm ntawm kev rov tsim kho lub ntsiav los ntawm kev rov tsim kho lub hierarchy ntawm cov ntaub ntawv header thiab txo cov naj npawb ntawm cov neeg sib txawv. Tus tshiab version txawv ntawm thawj version tau thov ob peb hnub dhau los los ntawm kev hloov kho rau 5.16-rc8 kernel, ntxiv kev ua kom zoo ntxiv thiab siv kev txhawb nqa rau lub tsev siv Clang compiler. Thaum siv Clang, thov thaj ua rau thaj txo qis lub sijhawm tsim los ntawm 88% lossis 77% raws li kev siv CPU. Thaum rov tsim kho lub ntsiav tag nrog cov lus txib "ua -j96 vmlinux," lub sijhawm tsim tau raug txo los ntawm 337.788 mus rau 179.773 vib nas this.

Tus tshiab version kuj daws qhov teeb meem nrog GCC plugins, kho qhov yuam kev uas tau txheeb xyuas thaum lub sijhawm tshuaj xyuas thawj zaug, thiab sib sau cov lus tshaj tawm ntawm "task_struct_per_task" qauv. Tsis tas li ntawd, kev ua kom zoo dua ntawm linux / sched.h header cov ntaub ntawv txuas ntxiv thiab kev ua kom zoo ntawm cov ntaub ntawv header ntawm RDMA subsystem (infiniband) tau siv, uas ua rau nws muaj peev xwm ntxiv txo lub sijhawm tsim los ntawm 9% piv rau thawj version. ntawm thaj ua rau thaj. Tus naj npawb ntawm cov ntaub ntawv C uas suav nrog cov ntaub ntawv linux/sched.h header tau raug txo los ntawm 68% mus rau 36% piv rau thawj version ntawm thaj ua rau thaj (los ntawm 99% mus rau 36% piv rau cov thawj kernel).

Tau qhov twg los: opennet.ru

Ntxiv ib saib