Skip to content

Conversation

@SirLynix
Copy link

@SirLynix SirLynix commented Feb 1, 2024

_top and _bottom can see their values modified by multiple threads at the same time, leading to false sharing. This can be avoided at the cost of a larger memory footprint by aligning them to the cacheline.

Note that even though std::hardware_destructive_interference_size is C++17, not all compilers implement it, so I added a preprocessor check and fallback on the common 64 cacheline size if not present.

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.

1 participant