Skip to content

Conversation

@ibraheemdev
Copy link
Member

@ibraheemdev ibraheemdev commented Feb 14, 2025

Testing to see if we can avoid the performance hit in #688 by using a single-writer optimized push method (which I added to boxcar in a branch). It looks like we can only do this for the ingredient_vec in Zalsa, not the page table or viewcaster vector.

@netlify
Copy link

netlify bot commented Feb 14, 2025

Deploy Preview for salsa-rs canceled.

Name Link
🔨 Latest commit 9c3c15d
🔍 Latest deploy log https://app.netlify.com/sites/salsa-rs/deploys/67ae89ab589dc50008d5f7fe

@codspeed-hq
Copy link

codspeed-hq bot commented Feb 14, 2025

CodSpeed Performance Report

Merging #690 will not alter performance

Comparing ibraheemdev:switch-to-boxcar (9c3c15d) with master (03197cb)

Summary

✅ 9 untouched benchmarks

@ibraheemdev
Copy link
Member Author

ibraheemdev commented Feb 14, 2025

Looks like this doesn't really help much. I would guess where append-only-vec is winning is avoiding per-entry initialization flags because it serializes insertion order using the spinlock, which gives it better cache-locality. That would require a completely new type in boxcar for the single-writer case, not just a new method. Either that, or the ingredients vector isn't actually where the regression is, and append-only-vec just looks better in the other cases because of the spin-lock.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants