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 a multi lane atomic for assertion counts #453

Merged
merged 1 commit into from
Dec 31, 2020

Conversation

martinus
Copy link
Contributor

This can speed up assertions in highly parallel tests by a factor of 3 and more, with a slight slowdown for the single threaded case.

Adds the configuration option DOCTEST_CONFIG_NO_MULTI_LANE_ATOMICS to disable multi lane atomics.

See #452

Compiled & ran ctest tests with g++4.8 and g++10.2. I couldn't compile with clang++ because lots of unrelated other warnings-as-errors.

This can speed up assertions in highly parallel tests by a factor of 3 and more, with a slight slowdown for the single threaded case.

Adds the configuration option `DOCTEST_CONFIG_NO_MULTI_LANE_ATOMICS` to disable multi lane atomics.
@onqtam
Copy link
Member

onqtam commented Dec 31, 2020

LGTM! Thanks for the PR :)

@onqtam onqtam merged commit 2da6254 into doctest:dev Dec 31, 2020
@martinus martinus deleted the martinus/2020-12-multi-lane-atomics branch December 31, 2020 10:54
@martinus
Copy link
Contributor Author

Thanks, and happy new year!

onqtam pushed a commit that referenced this pull request Feb 2, 2021
Adds the configuration option `DOCTEST_CONFIG_NO_MULTI_LANE_ATOMICS` to disable multi lane atomics.

This can speed up assertions in highly parallel tests by a factor of 3 and more, with a slight slowdown for the single threaded case.

Closes #452
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