Documentation

poolio

crates.io GPL licensed CI

A simple, safe, and fast thread pool based on pure message-passing concurrency that defies 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 documentation, see the Released API docs. In particular, you can find design and usage descriptions there.

Benchmarks

The benchmarks pit poolio against threadpool in a test of computing various lists of primes and writing them to a sink. On an Intel(R) Core(TM) i7-9750H CPU @ 2.60GHz (6 cores, 12 threads) running x86_64 GNU/Linux, we measured the following average execution times:

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

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

Contributing

If you want to contribute: CONTRIBUTING.

Security

For security-related issues, see: SECURITY.