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

Define heterogeneous renumbering API #4463

Merged

Conversation

seunghwak
Copy link
Contributor

Defines a heterogeneous renumbering function that renumbers sampled edge list vertex & edge IDs to consecutive integers per vertex & edge type, respectively.

The renumbered edges are sorted. New functions that sort & compress will be added later.

@seunghwak
Copy link
Contributor Author

@alexbarghi-nv In heterogeneous renumbering, can I assume that vertex types are always used? Or there can be a use case with no vertex type but just edge types?

Similarly, is there a use case with vertex types but no edge types & IDs? (i.e. should the input edgelist_edge_ids and edgelist_edge_types be std::optional?)

@seunghwak seunghwak self-assigned this Jun 5, 2024
@seunghwak seunghwak added feature request New feature or request non-breaking Non-breaking change labels Jun 5, 2024
@alexbarghi-nv
Copy link
Member

alexbarghi-nv commented Jun 5, 2024

@alexbarghi-nv In heterogeneous renumbering, can I assume that vertex types are always used? Or there can be a use case with no vertex type but just edge types?

Similarly, is there a use case with vertex types but no edge types & IDs? (i.e. should the input edgelist_edge_ids and edgelist_edge_types be std::optional?)

@alexbarghi-nv In heterogeneous renumbering, can I assume that vertex types are always used? Or there can be a use case with no vertex type but just edge types?

Similarly, is there a use case with vertex types but no edge types & IDs? (i.e. should the input edgelist_edge_ids and edgelist_edge_types be std::optional?)

It is safe to assume that if there are edge types, then there are also vertex types, and vice versa.

@alexbarghi-nv
Copy link
Member

This looks good to me. I had a long question typed out about compression, but then my tab crashed and I lost it. Anyways, we can worry about compression later. This API looks good.

Copy link
Member

@alexbarghi-nv alexbarghi-nv left a comment

Choose a reason for hiding this comment

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

👍

@alexbarghi-nv
Copy link
Member

Because the performance gain of CSR format is pretty small for PyG, I think implementing this function is sufficient for our 24.08 goals for heterogeneous renumbering.

@ChuckHastings
Copy link
Collaborator

/merge

@rapids-bot rapids-bot bot merged commit 8758f8c into rapidsai:branch-24.08 Jun 6, 2024
131 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cuGraph feature request New feature or request non-breaking Non-breaking change
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants