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

[Roadmap] 0.1.0 Release 🚀 #23

Open
14 of 37 tasks
rusty1s opened this issue Apr 25, 2022 · 1 comment
Open
14 of 37 tasks

[Roadmap] 0.1.0 Release 🚀 #23

rusty1s opened this issue Apr 25, 2022 · 1 comment

Comments

@rusty1s
Copy link
Member

rusty1s commented Apr 25, 2022

The first pyg-lib release will focus on unifying the implementations from torch-sparse and torch-cluster into a single package in order to reduce the number of external low-level library dependencies of PyG.
In addition, implementations will be improved, e.g., by out-sourcing common routines into re-usable building blocks, unifiying the interfaces, supporting various data types, biased sampling, etc.
New functionality will be integrated for temporal-based learning and GNN acceleration.

Samplers

Priority 0

  • Unify common routines behind re-usable functions (e.g., sampling with/without replacement)
  • Deterministic sampling routines
  • Full support for different data types, e.g., int32, int64, etc
  • Integration of cugraph dependency
  • Neighbor Sampling neighbor_sample(rowptr, col, seed, num_neighbors):
    • Support for homogeneous graphs (CPU+GPU)
    • Support for heterogeneous graphs (CPU-only)
    • replace: sampling with or without replacement
    • directed: sub-tree vs sub-graph sampling (CPU-only)
    • disjoint: disjoint subtrees for every seed node (CPU-only)
    • temporal: temporal sampling (CPU-only)
    • weighted: Support for biased sampling (CPU-only)
    • temporal_weighted: Support for biased temporal sampling (CPU-only)
    • return_edge_id: Support for returning edge IDs (CPU-only)
  • Subgraph Sampling subgraph_sample(rowptr, col, nodes):
    • Support for homogeneous graphs (CPU+GPU)
    • Support for heterogeneous graphs (CPU-only)
    • return_edge_id: Support for returning edge IDs (CPU-only)

Priority 1

  • Random Walk Sampling random_walk(rowptr, col, nodes):
    • Support for homogeneous graphs (CPU+GPU)
    • Support for heterogeneous graphs (CPU-only)
    • weighted: Support for biased sampling (CPU-only)
    • node2vec-based sampling (CPU-only)
    • return_edge_id: Support for returning edge IDs (CPU-only)
  • Heterogeneous Graph Transformer Sampling hgt_sample(rowptr, dict, seed):
    • weighted: Support for biased sampling (CPU-only)

Operators

Priority 0

Priority 1

Others

Priority 0 (refactor only)

  • METIS graph partitioning
  • Farthest point sampling fps
  • k-NN graph generation
  • radius graph generation/ball query

Priority 1

  • Full support for different data types, e.g., int32, int64, etc
@rusty1s rusty1s pinned this issue Apr 25, 2022
@rusty1s rusty1s unpinned this issue May 19, 2022
@rusty1s rusty1s pinned this issue May 19, 2022
@rusty1s rusty1s changed the title [Roadmap] Operators 🚀 [Roadmap] 0.1.0 Release 🚀 Aug 31, 2022
@DamianSzwichtenberg
Copy link
Member

I will take care of segment_matmul forward implementation for CPU. 😉

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

5 participants