Re: [PATCH v11 19/19] futex: Allow to make the private hash immutable.

From: Sebastian Andrzej Siewior
Date: Thu Apr 10 2025 - 06:58:31 EST


On 2025-04-07 17:57:42 [+0200], To linux-kernel@xxxxxxxxxxxxxxx wrote:
> - Xeon CPU E5-2650, 2 NUMA nodes, total 32 CPUs:
> - Before the introducing task local hash
> shared Averaged 1.487.148 operations/sec (+- 0,53%), total secs = 10
> private Averaged 2.192.405 operations/sec (+- 0,07%), total secs = 10
>
> - With the series
> shared Averaged 1.326.342 operations/sec (+- 0,41%), total secs = 10
> -b128 Averaged 141.394 operations/sec (+- 1,15%), total secs = 10
> -Ib128 Averaged 851.490 operations/sec (+- 0,67%), total secs = 10
> -b8192 Averaged 131.321 operations/sec (+- 2,13%), total secs = 10
> -Ib8192 Averaged 1.923.077 operations/sec (+- 0,61%), total secs = 10
> 128 is the default allocation of hash buckets.
> 8192 was the previous amount of allocated hash buckets.
>
> - Xeon(R) CPU E7-8890 v3, 4 NUMA nodes, total 144 CPUs:
> - Before the introducing task local hash
> shared Averaged 1.810.936 operations/sec (+- 0,26%), total secs = 20
> private Averaged 2.505.801 operations/sec (+- 0,05%), total secs = 20
>
> - With the series
> shared Averaged 1.589.002 operations/sec (+- 0,25%), total secs = 20
> -b1024 Averaged 42.410 operations/sec (+- 0,20%), total secs = 20
> -Ib1024 Averaged 740.638 operations/sec (+- 1,51%), total secs = 20
> -b65536 Averaged 48.811 operations/sec (+- 1,35%), total secs = 20
> -Ib65536 Averaged 1.963.165 operations/sec (+- 0,18%), total secs = 20
> 1024 is the default allocation of hash buckets.
> 65536 was the previous amount of allocated hash buckets.

On EPYC 7713, 2 NUMA nodes, 256 CPUs:
ops/sec buckets
-t 250 25.393 (+- 1,51%) 1024
-t 250 -b 1024 -I 1.645.327 (+- 0,34%) 1024
-t 250 -b 65536 25.445 (+- 2,41%) 65536
-t 250 -b 65536 -I 1.733.745 (+- 0,36%) 65536
-t 250 -b 0 1.745.242 (+- 0,21%) 32768 * 2

Sebastian