Re: [PATCH 2/2] sched/uclamp: Protect uclamp fast path code with static key

From: Mel Gorman
Date: Fri Jun 19 2020 - 07:57:34 EST


On Fri, Jun 19, 2020 at 11:36:46AM +0100, Valentin Schneider wrote:
> > nouclamp uclamp uclamp-static-key
> > Hmean send-64 162.43 ( 0.00%) 157.84 * -2.82%* 163.39 * 0.59%*
> > Hmean send-128 324.71 ( 0.00%) 314.78 * -3.06%* 326.18 * 0.45%*
> > Hmean send-256 641.55 ( 0.00%) 628.67 * -2.01%* 648.12 * 1.02%*
> > Hmean send-1024 2525.28 ( 0.00%) 2448.26 * -3.05%* 2543.73 * 0.73%*
> > Hmean send-2048 4836.14 ( 0.00%) 4712.08 * -2.57%* 4867.69 * 0.65%*
> > Hmean send-3312 7540.83 ( 0.00%) 7425.45 * -1.53%* 7621.06 * 1.06%*
> > Hmean send-4096 9124.53 ( 0.00%) 8948.82 * -1.93%* 9276.25 * 1.66%*
> > Hmean send-8192 15589.67 ( 0.00%) 15486.35 * -0.66%* 15819.98 * 1.48%*
> > Hmean send-16384 26386.47 ( 0.00%) 25752.25 * -2.40%* 26773.74 * 1.47%*
> >
>
> Am I reading this correctly in that compiling in uclamp but having the
> static key enabled gives a slight improvement compared to not compiling in
> uclamp? I suppose the important bit is that we're not seeing regressions
> anymore, but still.
>

I haven't reviewed the series in depth because from your review, another
version is likely in the works. However, it is not that unusual to
see small fluctuations like this that are counter-intuitive. The report
indicates the difference is likely outside of the noise with * around the
percentage difference instead of () but it could be small boot-to-boot
variance, differences in code layout, slight differences in slab usage
patterns etc. The definitive evidence that uclamp overhead is no there
is whether the uclamp functions show up in annotated profiles or not.

--
Mel Gorman
SUSE Labs