Re: [Bug #15713] hackbench regression due to commit 9dfc6e68bfe6e

Tejun Heo
2010-04-26T10:53:28Z

On 04/26/2010 12:09 PM, Pekka Enberg wrote:
>> My wild speculation is that previously the cpu_slub structures of two
>> neighboring threads ended up on the same cacheline by accident thanks
>> to the back to back allocation. W/ the percpu allocator, this no
>> longer would happen as the allocator groups percpu data together
>> per-cpu.
>
> Yanmin, do we see a lot of remote frees for your hackbench run? IIRC,
> it's the "deactivate_remote_frees" stat when CONFIG_SLAB_STATS is
> enabled.

I'm not familiar with the details or scales here so please take
whatever I say with a grain of salt. For hyperthreading configuration
I think operations don't have to be remote to be affected. If the
data for cpu0 and cpu1 were on the same cache line, and cpu0 and cpu1
are occupying the same physical core thus sharing all the resources it
would benefit from the sharing whether any operation was remote or not
as it saves the physical processor one cache line.

Thanks.

--
tejun