5 releases

0.2.2 Mar 19, 2023
0.2.1 Dec 16, 2022
0.2.0 Aug 18, 2022
0.1.1 Apr 25, 2022
0.1.0 Apr 23, 2022

#921 in Concurrency

24 downloads per month

GPL-3.0-or-later

21KB
277 lines

poolio

crates.io GPL licensed CI

A simple and safe and fast thread-pool based on pure message-passing concurrency defying the mainstream.

  • simplicity:
    • small API
    • less than 300 lines of code
  • safety:
    • no dependencies (apart from crossbeam)
    • thoroughly tested
    • memory-safety: no unsafe-code
    • thread-safety:
      • no data races
      • no deadlocks
  • performance:

For documumentation see Released API docs. In particular, you can find a design- and usage-description there.

Benches

The benches pit poolio against threadpool in a battle of computing various lists of primes and writing them to a sink. On a computer 'Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz' (6 cores and 12 CPUs) running x86_64 GNU/Linux we measured the following average times for executing the job:

Primes poolio threadpool
6 workers 27.468 ms 28.431 ms
12 workers 24.056 ms 23.456 ms

This suggests that the poolio and threadpool are equally performant. The full result can be downloaded here. (The benchmarks are powered by criterion.)

Contributing

If you want to contribute: CONTRIBUTING.

Security

For security-related issues see: SECURITY.

Dependencies

~125KB