poolio

Crates.iopoolio
lib.rspoolio
version0.2.2
sourcesrc
created_at2022-04-23 23:40:51.537847
updated_at2023-03-19 00:58:41.763343
descriptionA thread-pool.
homepage
repositoryhttps://github.com/shtsoft/poolio
max_upload_size
id572862
size36,716
(shtsoft)

documentation

https://docs.rs/poolio

README

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.

Commit count: 40

cargo fmt