Page MenuHomeFreeBSD

powerpc64: Optimize radix trap handling a little more
ClosedPublic

Authored by jhibbits on Apr 27 2021, 2:21 AM.
Tags
None
Referenced Files
Unknown Object (File)
Sat, Apr 13, 4:45 AM
Unknown Object (File)
Wed, Apr 10, 12:15 AM
Unknown Object (File)
Feb 11 2024, 11:46 AM
Unknown Object (File)
Jan 23 2024, 7:06 AM
Unknown Object (File)
Jan 14 2024, 4:57 AM
Unknown Object (File)
Dec 22 2023, 9:22 PM
Unknown Object (File)
Dec 19 2023, 7:15 AM
Unknown Object (File)
Nov 22 2023, 8:16 AM
Subscribers

Details

Summary

Since PCPU can live in a GPR for a while longer, let it, rather than
re-getting it in yet another register. MFSPR is an expensive operation,
12 clock latency on POWER9, so the fewer operations we need, the better.

Since the check is tightly coupled to the fetch, by reducing the number
of fetch+check, we reduce the stalls, and improve the performance
marginally. Buildworld was measured at a ~5-7% improvement on a single
run.

Test Plan

Boot on radix and HPT

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

Looks good to me. Thanks! There are probably more instances of this kind of thing lying around.

This revision is now accepted and ready to land.Apr 29 2021, 12:29 PM