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

Primitive to support gathering one hop neighbors #2623

Merged
merged 18 commits into from
Sep 4, 2022

Conversation

seunghwak
Copy link
Contributor

@seunghwak seunghwak commented Aug 26, 2022

  • Refactored transform_reduce_v_frontier_outgoing_e_by_dst (moved the first part of the implementation to detail/extract_transform_v_frontier_e, this moved code is used in the new primitive as well).
  • Added a new primitive extract_transform_v_frontier_outgoing_e

@ChuckHastings To gather one hop neighbors, in SG, you need to call this primitive and an edge_op passed to the primitive should return src,dst, (edge weight), and (edge ID or type once we added edge property support). In MG, the result should be properly shuffled in addition. Then, call thrust::sort_by_key and thrust::reduce_by_key to gather neighbors of each vertex together and compute degrees for each vertex. In SG, we might be able to avoid thrust::sort_by_key if we change the primitive internals and provide some additional guarantees about the extracted output ordering, but I guess this thrust::sort_by_key overhead is not too significant. If thrust::sort_by_key in gathering one hop neighbors really becomes a performance bottleneck, we can re-visit this assumption.

@seunghwak seunghwak requested a review from a team as a code owner August 26, 2022 16:16
@seunghwak seunghwak self-assigned this Aug 26, 2022
@seunghwak seunghwak added feature request New feature or request 2 - In Progress non-breaking Non-breaking change labels Aug 26, 2022
@seunghwak seunghwak added this to the 22.10 milestone Aug 26, 2022
@seunghwak seunghwak changed the title [WIP][skip-ci] Primitive to support gathering one hop neighbors Primitive to support gathering one hop neighbors Aug 29, 2022
@codecov-commenter
Copy link

codecov-commenter commented Sep 2, 2022

Codecov Report

❗ No coverage uploaded for pull request base (branch-22.10@653cca8). Click here to learn what that means.
Patch has no changes to coverable lines.

Additional details and impacted files
@@               Coverage Diff               @@
##             branch-22.10    #2623   +/-   ##
===============================================
  Coverage                ?   60.07%           
===============================================
  Files                   ?      112           
  Lines                   ?     6154           
  Branches                ?        0           
===============================================
  Hits                    ?     3697           
  Misses                  ?     2457           
  Partials                ?        0           

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

☔ View full report at Codecov.
📢 Do you have feedback about the report comment? Let us know in this issue.

@@ -0,0 +1,1039 @@
/*
* Copyright (c) 2020-2022, NVIDIA CORPORATION.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Is this new (should be just 2022) or moved from somewhere?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Copied from transfrom_reduce_v_frontier_outgoing_e_by_dst.cuh

@@ -0,0 +1,104 @@
/*
* Copyright (c) 2020-2022, NVIDIA CORPORATION.
Copy link
Collaborator

Choose a reason for hiding this comment

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

Is this new (should be just 2022) or moved from somewhere?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

Yes, this is actually new. I will fix the copyright year.

Copy link
Contributor

@naimnv naimnv left a comment

Choose a reason for hiding this comment

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

I looked carefully into some part of the code and skimmed over some other parts.

@ChuckHastings
Copy link
Collaborator

@gpucibot merge

@rapids-bot rapids-bot bot merged commit 92f1f36 into rapidsai:branch-22.10 Sep 4, 2022
@seunghwak seunghwak deleted the fea_extract_transform branch October 20, 2022 18:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request New feature or request non-breaking Non-breaking change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants