[package]
name = "threadteam"
version = "0.1.3"
edition = "2021"
license = "MIT OR Apache-2.0"
authors = ["Satoshi Terasaki", "Hiroshi Shinaoka"]
repository = "https://github.com/tensor4all/threadteam-rs"
readme = "README.md"
documentation = "https://docs.rs/threadteam"
description = "Scoped CPU thread-team placement token: a Pool and a non-Clone Exec with fork, for_ranges, external and broadcast; no Rayon type in the public API."
keywords = ["threading", "parallel", "scheduler", "placement", "thread-pool"]
categories = ["concurrency", "science"]
[features]
default = ["parallel"]
parallel = ["dep:rayon"]
ledger = []
test-hooks = []
trace = []
[dependencies]
rayon = { version = "1.10", optional = true }
thiserror = "1.0"
[lib]
bench = false
[target.'cfg(loom)'.dependencies]
loom = "0.7"
[target.'cfg(target_vendor = "apple")'.dependencies]
libc = "0.2"
[target.'cfg(target_os = "linux")'.dependencies]
libc = "0.2"
[dev-dependencies]
libc = "0.2"
[[bench]]
name = "team_dispatch"
harness = false
[[bench]]
name = "dispatch_cost"
harness = false
required-features = ["parallel"]
[[bench]]
name = "wake_probe"
harness = false
[[bench]]
name = "idle_trace"
harness = false
required-features = ["trace", "parallel"]
[[bench]]
name = "spin_grid"
harness = false
required-features = ["parallel"]
[[test]]
name = "idle_clock"
required-features = ["trace", "parallel"]
[[test]]
name = "team_hooks"
required-features = ["test-hooks", "parallel"]
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(loom)'] }
[[bench]]
name = "cost_lookup"
harness = false