thread_binder 0.1.0

Bind rayon pools to limit numa effects
Documentation
  • Coverage
  • 71.43%
    5 out of 7 items documented0 out of 1 items with examples
  • Size
  • Source code size: 7.1 kB This is the summed size of all the files inside the crates.io package for this release.
  • Documentation size: 456.92 kB This is the summed size of all files generated by rustdoc for all configured targets
  • Ø build duration
  • this release: 29s Average build duration of successful builds.
  • all releases: 29s Average build duration of successful builds in releases after 2024-10-23.
  • Links
  • wagnerf42/thread_binder
    1 3 0
  • crates.io
  • Dependencies
  • Versions
  • Owners
  • wagnerf42

WHAT

This crate allows you to create a bindable thread pool. This is simply a wrapper around the Rayon's thread pool. It supports all the "major" functions with the same signature. At the time of creation of this pool, a binding policy is specified. All the threads in this pool will be bound to the cores using this policy. Currently we bind to one single numa node but other policies will eventually be added at a later point.

Note that if the machine is hyperthreaded, the system will try not to map two threads on the same physical core.

WHY

This crate uses an existing HWLOC-RS crate by daschl. However, it is much more programmer friendly since the same API is exposed and that makes it super easy to use.