constantine/helpers
Mamy Ratsimbazafy bf32c2d408
Parallel for (#222)
* introduce reserve threads to minimize latency and maximize throughput when awaiting a future

* introduce a ceilDiv proc

* threadpool: implement parallel-for loops

* 10x perf improvement by not waking reserveBackoff on syncAll

* bench overhead: new reserve system might introduce too much wakeup latency, 2x slower, for fine-grained parallelism

* add parallelForStrided

* Threadpool: Implement parallel reductions

* refactor parallel loop codegen: introduce descriptor, parsing and codegen stages

* parallel strided, test transpose bench

* tight loop is faster when backoff is not inline

* no POSIX stuff on windows, larger types for histogram bench

* fix tests

* max RSS overflow?

* missed an undefined var

* exit histogram on 32-bit

* forgot to return early dor 32-bit
2023-02-24 09:47:36 +01:00
..
README.md 30% faster constant-time inversion 2020-03-20 23:03:52 +01:00
pararun.nim Batch additions (#207) 2022-10-29 22:43:40 +02:00
prng_unsafe.nim Parallel for (#222) 2023-02-24 09:47:36 +01:00

README.md

Helpers, utilities, tools, miscellaneous

This folder holds helper functions that are not part of Constantine but facilitates testing and benchmarking.