Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement volatile ck_cc_memcpy #47

Open
sbahra opened this issue Aug 4, 2015 · 0 comments
Open

Implement volatile ck_cc_memcpy #47

sbahra opened this issue Aug 4, 2015 · 0 comments

Comments

@sbahra
Copy link
Member

sbahra commented Aug 4, 2015

This is primarily needed for ck_ring. On TSO / PSO, we can fall back to builtin / library implementation, otherwise, TSO architectures require regular store implementation to avoid additional synchronization on enqueue operation. Right now we rely on silent contract of sfence for larger block sizes but some folks do not guarantee this. In addition to this, https://twitter.com/pkhuong/status/553224121359007744

ck_cc_memcpy provides ordering guarantees with respect to ck_pr_fence.

akopytov added a commit to akopytov/ck that referenced this issue Oct 15, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant