Calling Rust from Python when a loop will not vectorize
Some loops will not vectorize, and Python object overhead eats whatever is left. Here is how PyO3 and Maturin let you move a hot loop into Rust, how Rayon uses the rest of your cores, and what the throughput looks like afterwards.