Improve implementations of __set_difference_construct() and __set_symmetric_difference_construct()#2612
Draft
SergeyKopienko wants to merge 20 commits intomainfrom
Draft
Improve implementations of __set_difference_construct() and __set_symmetric_difference_construct()#2612SergeyKopienko wants to merge 20 commits intomainfrom
__set_difference_construct() and __set_symmetric_difference_construct()#2612SergeyKopienko wants to merge 20 commits intomainfrom
Conversation
…n_construct() without if...else statement inside loop
…rsection_construct() without if...else statement inside loop
…erence_construct() without if...else statement inside loop
…etric_difference_construct() without if...else statement inside loop
This reverts commit ed52b6f.
This reverts commit d203545.
… comment" This reverts commit 2ffc155.
…set_symmetric_difference_construct() without if...else statement inside loop" This reverts commit 5336d78.
…set_difference_construct() without if...else statement inside loop" This reverts commit 9b9feb3.
…set_intersection_construct() without if...else statement inside loop" This reverts commit 943d6c1.
…set_union_construct() without if...else statement inside loop" This reverts commit df9aaa7.
…e of __set_union_construct()
…e of __set_difference_construct()
…e of __set_symmetric_difference_construct()
…rformance of __set_union_construct()" This reverts commit 3b74f64.
__set_union_construct(), __set_intersection_construct(), __set_difference_construct() and __set_symmetric_difference_construct()__set_difference_construct() and __set_symmetric_difference_construct()
Contributor
There was a problem hiding this comment.
Pull request overview
Refactors the set-operation construction helpers in the PSTL parallel backend utilities to streamline control flow and ensure remaining ranges are copied after the main comparison loop.
Changes:
- Refactored
__set_difference_construct()to use awhileloop over both ranges and copy any remaining[first1,last1)tail afterward. - Refactored
__set_symmetric_difference_construct()to use awhileloop over both ranges and then copy the remaining tail from whichever range is not exhausted.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Contributor
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refactors the set-operation construction helpers in the PSTL parallel backend utilities to streamline control flow and ensure remaining ranges are copied after the main comparison loop.
Changes:
__set_difference_construct()to use awhileloop over both ranges and copy any remaining[first1,last1)tail afterward.__set_symmetric_difference_construct()to use awhileloop over both ranges and then copy the remaining tail from whichever range is not exhausted.These changes gave us some performance profit.