From 59befed8ee44f9e1749d5e8417fa301ef8e1c953 Mon Sep 17 00:00:00 2001 From: ringabout <43030857+ringabout@users.noreply.github.com> Date: Tue, 2 Aug 2022 00:06:27 +0800 Subject: [PATCH] prevent cache thrashing (#20129) * prevent cache thrash Co-authored-by: Charles Blake * Update lib/pure/random.nim Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> Co-authored-by: Charles Blake Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> --- lib/pure/random.nim | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/lib/pure/random.nim b/lib/pure/random.nim index bcf6156afb..e2a7ff5bd5 100644 --- a/lib/pure/random.nim +++ b/lib/pure/random.nim @@ -188,8 +188,10 @@ proc skipRandomNumbers*(s: var Rand) = proc randomSum(params: tuple[r: Rand, index: int]) {.thread.} = var r = params.r + var s = 0 # avoid cache thrashing for i in 1..numbers: - vals[params.index] += r.rand(0..10) + s += r.rand(0..10) + vals[params.index] = s var r = initRand(2019) for i in 0..