[PATCH v15 0/6] Add NUMA-awareness to qspinlock

Alex Kogan alex.kogan at oracle.com
Thu Sep 30 16:51:11 PDT 2021



> On Sep 30, 2021, at 5:44 AM, Barry Song <21cnbao at gmail.com> wrote:
> 
>> We have done some performance evaluation with the locktorture module
>> as well as with several benchmarks from the will-it-scale repo.
>> The following locktorture results are from an Oracle X5-4 server
>> (four Intel Xeon E7-8895 v3 @ 2.60GHz sockets with 18 hyperthreaded
>> cores each). Each number represents an average (over 25 runs) of the
>> total number of ops (x10^7) reported at the end of each run. The 
>> standard deviation is also reported in (), and in general is about 3%
>> from the average. The 'stock' kernel is v5.12.0,
> 
> I assume x5-4 server has the crossbar topology and its numa diameter is
> 1hop, and all tests were done on this kind of symmetrical topology. Am
> I right? 
> 
>    ┌─┐                 ┌─┐
>    │ ├─────────────────┤ │
>    └─┤1               1└┬┘
>      │  1           1   │
>      │    1       1     │
>      │      1   1       │
>      │        1         │
>      │      1   1       │
>      │     1      1     │
>      │   1         1    │
>     ┌┼┐1             1  ├─┐
>     │┼┼─────────────────┤ │
>     └─┘                 └─┘
> 
> 
> what if the hardware is using the ring topology and other topologies
For better or worse, CNA is pretty much agnostic to the physical topology.
So it is true that we might do better by transferring NUMA node preference
to a “closer” node, but it would probably require some sophisticated logic 
to identify such a node. As discussed on another thread, we are opting
for a simple solution that might be refined later if needed.

Best regards,
— Alex




More information about the linux-arm-kernel mailing list