[PATCH] eal: add cache guard to per-lcore PRNG state
Mattias Rönnblom
hofors at lysator.liu.se
Mon Sep 4 13:57:19 CEST 2023
On 2023-09-04 11:26, Morten Brørup wrote:
> The per-lcore random state is frequently updated by their individual
> lcores, so add a cache guard to prevent CPU cache thrashing.
>
"to prevent false sharing in case the CPU employs a next-N-lines (or
similar) hardware prefetcher"
In my world, cache trashing and cache line contention are two different
things.
Other than that,
Acked-by: Mattias Rönnblom <mattias.ronnblom at ericsson.com>
> Depends-on: series-29415 ("clarify purpose of empty cache lines")
>
> Signed-off-by: Morten Brørup <mb at smartsharesystems.com>
> ---
> lib/eal/common/rte_random.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/lib/eal/common/rte_random.c b/lib/eal/common/rte_random.c
> index 565f2401ce..3df0c7004a 100644
> --- a/lib/eal/common/rte_random.c
> +++ b/lib/eal/common/rte_random.c
> @@ -18,6 +18,7 @@ struct rte_rand_state {
> uint64_t z3;
> uint64_t z4;
> uint64_t z5;
> + RTE_CACHE_GUARD;
> } __rte_cache_aligned;
>
> /* One instance each for every lcore id-equipped thread, and one
More information about the dev
mailing list