Skip to content

libraries/base/tests/AtomicModifyIORef is quite slow with N>1

This test case seems to be quite slow for me. It spins up 10 threads and for each one it increments an IORef 10,000,000 times.

This takes 6 seconds to run on my computer with -N1. But once we introduce contention by setting at least -N2, it slows down a lot and runs in the order of minutes(!). Perhaps this is partly some sort of CPU thing. I imagine some CPUs will be better at this than others.

Maybe we can remove a few zeros from the increment count?

I noticed this while running some tests with the nonmoving_thr way, but it looks like this is just the case whenever we have multiple capabilities.

Edited by Teo Camarasu
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information