Commit Graph

4 Commits

Author SHA1 Message Date
John Kåre Alsaker cd18a8d287 Tweak VecCache to improve performance 2026-01-26 22:36:00 +01:00
Josh Triplett 9837c3c3f8 Simplify vec_cache::tests::slot_index_exhaustive by pulling out 0 case
`slot_index_exhaustive` has additional complexity in its loop that only
applies for index 0. Pull that case out of the loop.
2025-06-05 12:12:28 -07:00
bjorn3 1fcae03369 Rustfmt 2025-02-08 22:12:13 +00:00
Mark Rousskov da58efb11d Improve VecCache under parallel frontend
This replaces the single Vec allocation with a series of progressively
larger buckets. With the cfg for parallel enabled but with -Zthreads=1,
this looks like a slight regression in i-count and cycle counts (<0.1%).

With the parallel frontend at -Zthreads=4, this is an improvement (-5%
wall-time from 5.788 to 5.4688 on libcore) than our current Lock-based
approach, likely due to reducing the bouncing of the cache line holding
the lock. At -Zthreads=32 it's a huge improvement (-46%: 8.829 -> 4.7319
seconds).
2024-11-15 18:20:32 -05:00