discard """ matrix: "--mm:arc --threads:on; --mm:orc --threads:on" output: "ok" timeout: "30" """ import std/[atomics, typedthreads] const pointerCount = 512 drainCount = 2048 iterations {.intdefine.} = 200 sizes = [16, 64, 4000, 4096, 8192] var pointers: array[pointerCount, pointer] mayExit: Atomic[bool] proc owner() {.thread.} = for i in 0..