# hwlocality-sys: The low-level bindings below hwlocality
[](./LICENSE)
[](https://crates.io/crates/hwlocality-sys)
[](https://docs.rs/hwlocality-sys/)
[](https://github.com/HadrienG2/hwlocality/actions?query=workflow%3A%22Continuous+Integration%22)
[](https://www.bestpractices.dev/en/projects/7876)

This crate contains the low-level unsafe Rust -> C FFI bindings to
[hwloc](http://www.open-mpi.org/projects/hwloc), that are used to implement the
safe [hwlocality](https://github.com/HadrienG2/hwlocality) bindings.
Depending on your needs, you can either link to a `libhwloc` that is
pre-installed on your computer or have `hwlocality` build its own copy
`libhwloc` internally. Please read [the "Prerequisites" section of the
hwlocality README](https://github.com/HadrienG2/hwlocality#prerequisites) for
more information about these two options.
Like any C API, the `hwlocality-sys` low-level bindings are highly unsafe to
use, and it is advised that you use the safe `hwlocality` bindings instead
whenever possible. If you encounter any issue with the safe bindings that
prevents you from using them and forces you to use the unsafe C API directly,
please report them in the issue tracker so we get them fixed.