patch เบฅเบทเบกเบžเบปเบšเปƒเบ™ Linux kernel เบœเบปเบ™เบเบฐเบ—เบปเบšเบ•เปเปˆเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” CPU AMD

Linux 6.0 kernel, เบ„เบฒเบ”เบงเปˆเบฒเบˆเบฐเบญเบญเบเปƒเบ™เบงเบฑเบ™เบˆเบฑเบ™เบ•เปเปˆเป„เบ›, เบ›เบฐเบเบญเบšเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบ—เบตเปˆเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบเบฑเบšเบฅเบฐเบšเบปเบšเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™เป‚เบ›เป€เบŠเบ”เป€เบŠเบต AMD Zen. เปเบซเบผเปˆเบ‡เบ—เบตเปˆเบกเบฒเบ‚เบญเบ‡เบเบฒเบ™เบซเบผเบธเบ”เบฅเบปเบ‡เบ›เบฐเบชเบดเบ”เบ—เบดเบžเบฒเบšเป„เบ”เป‰เบ–เบทเบเบžเบปเบšเป€เบซเบฑเบ™เบงเปˆเบฒเบกเบตเบเบฒเบ™เป€เบžเบตเปˆเบกเบฅเบฐเบซเบฑเบ” 20 เบ›เบตเบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบšเบšเบฑเบ™เบซเบฒเบฎเบฒเบ”เปเบงเปƒเบ™เบšเบฒเบ‡ chipsets. เบšเบฑเบ™เบซเบฒเบฎเบฒเบ”เปเบงเป„เบ”เป‰เบ–เบทเบเปเบเป‰เป„เบ‚เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™เปเบฅเบฐเบšเปเปˆเบ›เบฒเบเบปเบ”เบขเบนเปˆเปƒเบ™เบŠเบดเบšเป€เบŠเบฑเบ”เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™, เปเบ•เปˆเบเบฒเบ™เปเบเป‰เป„เบ‚เป€เบเบปเปˆเบฒเบชเปเบฒเบฅเบฑเบšเบšเบฑเบ™เบซเบฒเป„เบ”เป‰เบ–เบทเบเบฅเบทเบกเปเบฅเบฐเบเบฒเบเป€เบ›เบฑเบ™เปเบซเบผเปˆเบ‡เบ‚เบญเบ‡เบเบฒเบ™เป€เบชเบทเปˆเบญเบกเป‚เบŠเบกเบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เปƒเบ™เบฅเบฐเบšเบปเบšเป‚เบ”เบเบญเบตเบ‡เปƒเบชเปˆ CPU AMD เบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เบซเบก. เบฅเบฐเบšเบปเบšเปƒเบซเบกเปˆเปƒเบ™ CPU Intel เบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบœเบปเบ™เบเบฐเบ—เบปเบšเบˆเบฒเบเบเบฒเบ™เปเบเป‰เป„เบ‚เปเบšเบšเป€เบเบปเปˆเบฒ, เป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡ ACPI เป‚เบ”เบเปƒเบŠเป‰เป„เบ”เป€เบงเบต intel_idle เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เปเบฅเบฐเบšเปเปˆเปเบกเปˆเบ™เป„เบ”เป€เบงเบต processor_idle เบ—เบปเปˆเบงเป„เบ›.

เบเบฒเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเป„เบ”เป‰เบ–เบทเบเป€เบžเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™ kernel เปƒเบ™เป€เบ”เบทเบญเบ™เบกเบตเบ™เบฒ 2002 เป€เบžเบทเปˆเบญเบชเบฐเบเบฑเบ”เบเบฑเป‰เบ™เบเบฒเบ™เบ›เบฐเบเบปเบ”เบ•เบปเบงเบ‚เบญเบ‡เปเบกเบ‡เป„เบกเป‰เปƒเบ™ chipsets เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบฒเบ™เบšเปเปˆเป„เบ”เป‰เบเปเบฒเบ™เบปเบ”เบชเบฐเบ–เบฒเบ™เบฐ idle เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบเบฒเบ™เบŠเบฑเบเบŠเป‰เบฒเปƒเบ™เบเบฒเบ™เบ›เบฐเบกเบงเบ™เบœเบปเบ™เบชเบฑเบ™เบเบฒเบ™ STPCLK#. เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒ, เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” ACPI เป„เบ”เป‰เป€เบžเบตเปˆเบกเบ„เปเบฒเปเบ™เบฐเบ™เปเบฒ WAIT เป€เบžเบตเปˆเบกเป€เบ•เบตเบก, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเบŠเป‰เบฒเบฅเบปเบ‡เป€เบžเบทเปˆเบญเปƒเบซเป‰เบŠเบดเบšเป€เบŠเบฑเบ”เบกเบตเป€เบงเบฅเบฒเบ—เบตเปˆเบˆเบฐเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐเบ—เบตเปˆเบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบ. เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆ profileing เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบ„เปเบฒเปเบ™เบฐเบ™เปเบฒ IBS (Instruction-Based Sampling) เปƒเบ™เป‚เบ›เป€เบŠเบ”เป€เบŠเบต AMD Zen3, เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ„เบปเป‰เบ™เบžเบปเบšเบงเปˆเบฒเป‚เบ›เป€เบŠเบ”เป€เบŠเบตเปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ” stubs, เป€เบŠเบดเปˆเบ‡เบ™เปเบฒเป„เบ›เบชเบนเปˆเบเบฒเบ™เบ•เบตเบ„เบงเบฒเบกเบšเปเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบ‚เบญเบ‡เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เป‚เบซเบผเบ”เบ‚เบญเบ‡เป‚เบ›เป€เบŠเบ”เป€เบŠเบตเปเบฅเบฐเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเป‚เบซเบกเบ”เบ™เบญเบ™เบ—เบตเปˆเป€เบฅเบดเบเป€เบŠเบดเปˆเบ‡ (C- เบฅเบฑเบ”) เป‚เบ”เบ CPU cpuidle.

เบžเบถเบ”เบ•เบดเบเปเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบชเบฐเบ—เป‰เบญเบ™เปƒเบซเป‰เป€เบซเบฑเบ™เปƒเบ™เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบตเปˆเบซเบผเบธเบ”เบฅเบปเบ‡เบžเบฒเบเปƒเบ•เป‰เบเบฒเบ™เป‚เบซเบผเบ”เบ‚เบญเบ‡เบงเบฝเบเบ—เบตเปˆเบชเบฐเบซเบผเบฑเบšเบเบฑเบ™เป€เบฅเบทเป‰เบญเบเป†เบฅเบฐเบซเบงเปˆเบฒเบ‡เบชเบฐเบ–เบฒเบ™เบฐเบ—เบตเปˆเบšเปเปˆเบกเบตเบงเบฝเบเปเบฅเบฐเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบซเบงเปˆเบฒเบ‡. เบ•เบปเบงเบขเปˆเบฒเบ‡เป€เบŠเบฑเปˆเบ™, เป€เบกเบทเปˆเบญเปƒเบŠเป‰ patch เบ—เบตเปˆเบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰ bypass maneuver, เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบชเบฐเป€เบฅเปˆเบเบ‚เบญเบ‡ tbench เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™เบˆเบฒเบ 32191 MB/s เป€เบ›เบฑเบ™ 33805 MB/s.

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

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