Can you explain that Tokio vs crossbeam vs rayon a bit more? Should I default to rayon or crossbeam because of that? It depends on what you want to do. If you are doing io-bound work, Tokio would be what you want -- you would use it as a runtime for the async capabilities in Rust. If you have cpu-bound work, then rayon is what you want to use. Rayon is a work-stealing parallelism crate -- it will