Re: [PATCH] sched: add unlikey branch hints to several system calls
From: Peter Zijlstra
Date: Wed Feb 19 2025 - 09:38:57 EST
On Wed, Feb 19, 2025 at 02:24:23PM +0000, Colin Ian King wrote:
> Adding an unlikely() hint on early error return paths improves the
> run-time performance of several sched related system calls.
>
> Benchmarking on an i9-12900 shows the following per system call
> performance improvements:
>
> before after improvement
> sched_getattr 182.4ns 170.6ns ~6.5%
> sched_setattr 284.3ns 267.6ns ~5.9%
> sched_getparam 161.6ns 148.1ns ~8.4%
> sched_setparam 1265.4ns 1227.6ns ~3.0%
> sched_getscheduler 129.4ns 118.2ns ~8.7%
> sched_setscheduler 1237.3ns 1216.7ns ~1.7%
>
> Results are based on running 20 tests with turbo disabled (to reduce
> clock freq turbo changes), with 10 second run per test based on the
> number of system calls per second. The % standard deviation of the
> measurements for the 20 tests was 0.05% to 0.40%, so the results are
> reliable.
>
> Tested on kernel build with gcc 14.2.1
Nice, thanks!