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

[DF] Remove call to VecOps::Combinations in ODB query 6 #266

Merged
merged 1 commit into from
Feb 6, 2023

Conversation

ikabadzhov
Copy link
Contributor

VecOps::Combinations creates a jets.size()x3 matrix. Moreover, this newly created matrix is used only as index, such as jets[c[0][i]].
It makes sense to get rid of this matrix and access the elements directly. In this case, we have contiguous memory access only. Hence, improved performance of the find_triject function.

VecOps::Combinations creates a jets.size()x3 matrix.
Moreover, this newly created matrix is used only as index, such as
jets[c[0][i]].
It makes sense to get rid of this matrix and access the elements
directly. In this case, we have contiguous memory access only.
Hence, improved performance of the find_triject function.
@ikabadzhov ikabadzhov requested a review from eguiraud February 6, 2023 15:23
Copy link
Member

@eguiraud eguiraud left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Ivan! LGTM, and I guess you verified the output is identical? 😄

@eguiraud
Copy link
Member

eguiraud commented Feb 6, 2023

P.S. could you please open a sibling PR at https://github.com/root-project/opendata-benchmarks ?

@ikabadzhov
Copy link
Contributor Author

Thanks Ivan! LGTM, and I guess you verified the output is identical? 😄

Let me double check. I quickly looked and they seemed identical. But let me read the numbers :D

@ikabadzhov
Copy link
Contributor Author

Procuded histograms are identical (old and new). Hence, merging.

@ikabadzhov ikabadzhov merged commit eec8538 into root-project:master Feb 6, 2023
@ikabadzhov ikabadzhov deleted the odb6-no-combinations branch February 6, 2023 15:57
ikabadzhov added a commit to ikabadzhov/opendata-benchmarks that referenced this pull request Feb 6, 2023
VecOps::Combinations creates a jets.size()x3 matrix.
Moreover, this newly created matrix is used only as index, such as jets[c[0][i]].
It makes sense to get rid of this matrix and access the elements directly.
In this case, we have contiguous memory access only.
Hence, improved performance of the find_triject function.

Analogous to root-project/rootbench#266.
eguiraud pushed a commit to root-project/opendata-benchmarks that referenced this pull request Feb 6, 2023
VecOps::Combinations creates a jets.size()x3 matrix.
Moreover, this newly created matrix is used only as index, such as jets[c[0][i]].
It makes sense to get rid of this matrix and access the elements directly.
In this case, we have contiguous memory access only.
Hence, improved performance of the find_triject function.

Analogous to root-project/rootbench#266.
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