#threadpool #thread #pool #tree #parallelism

thread-tree

A tree-structured thread pool for splitting jobs hierarchically on worker threads. The tree structure means that there is no contention between workers when delivering jobs

4 releases

0.3.2 Jan 2, 2021
0.3.1 Jan 1, 2021
0.3.0 Dec 26, 2020
0.2.0 Dec 20, 2020

#189 in Concurrency

Download history 150/week @ 2021-06-07 216/week @ 2021-06-14 195/week @ 2021-06-21 20/week @ 2021-06-28 38/week @ 2021-07-05 89/week @ 2021-07-12 114/week @ 2021-07-19 122/week @ 2021-07-26 114/week @ 2021-08-02 220/week @ 2021-08-09 119/week @ 2021-08-16 189/week @ 2021-08-23 68/week @ 2021-08-30 111/week @ 2021-09-06 133/week @ 2021-09-13 79/week @ 2021-09-20

203 downloads per month
Used in 5 crates (via matrixmultiply)

MIT/Apache

36KB
727 lines

Thread tree

A tree-structured thread pool. See API documentation for more information.

Stack jobs and job execution based on rayon-core by Niko Matsakis and Josh Stone.

Experimental simple thread pool used for spawning stack-bound scoped jobs with no work stealing.

This is good for:

  • You want to split work recursively in jobs that use approximately the same time.
  • You want thread pool overhead to be low

This is not good for:

  • You need work stealing
  • When you have jobs of uneven size

Wild ideas and notes

Possibly allow reserving a subbranch of the tree.


lib.rs:

A hierarchical thread pool used for splitting work in a branching fashion.

This thread pool is good for:

  • You want to split work recursively in jobs that use approximately the same time.
  • You want thread pool overhead to be low

This is not good for:

  • You need work stealing
  • When you have jobs of uneven size

Dependencies

~230KB