Re: [linus:master] [x86] adfcf4231b: blogbench.read_score -10.9% regression

From: Linus Torvalds
Date: Thu May 04 2023 - 13:40:27 EST


On Thu, May 4, 2023 at 1:12 AM kernel test robot <yujie.liu@xxxxxxxxx> wrote:
>
> Since there are both improvements and regressions in various micro
> benchmarks, we are sending this report to provide some data and hope
> this can be helpful for further investigation. Thanks.

Heh, yes. As that makes clear, the 10% regression on one load was a
25% improvement on another.

That said, while I was expecting these kinds of results, the absolute
percentages are much higher than I expected. I would have expected a
lot of "couple of percent either way".

Even with memory copies being as important as they are, moving the
needle by -10% to +25% is a much bigger swing than expected.

> Details are as below:

One of the issues with the details is that these benchmarks are
running on different machines, so there's a mix of

Xeon(R) Platinum 8358 CPU @ 2.60GHz (Ice Lake)
Xeon(R) Gold 6252 CPU @ 2.10GHz (Cascade Lake)

in those details, and it might matter.

That said, the big picture is probably independent - both have ERMS
with 'rep movs' doing some cacheline optimizations, and the big
changes in the perf data is in things like 'perf-stat.ps.dTLB-stores'
and 'perf-stat.ps.node-store-misses' which is probably exactly about
that.

And I suspect that the 'blogbench.read_score' thing probably does
mostly big reads, and really really liked the cacheline optimizations
of 'rep movs' even when it was slow in other things.

Let me think about how ugly it would be to re-introduce that case just
for large copies.

Linus