[Roadmap] Compiler infrastructure
- Dominant language
- Python
- Stars
- 14.3k
- Forks
- 3.1k
- PR merge metrics
- No merged PRs in 30d
Description
Deep learning compiler is becoming a fundamental piece of modern deep learning frameworks. In the domain of GNN system, there have been a rise of interest in utilizing compilers for optimizing GNNs. For DGL, we plan to integrate `torch.fx` and `torchscript` to open up these chances.
The major road blocker is the data class `DGLGraph` which is currently opaque to PyTorch. The internal implementation of `DGLGraph` has multiple layers as well as mutable members (for caching different sparse formats). Therefore, the plan is to tackle different levels of components piece by piece.
- [ ] Expose the internal sparse matrix and its operators to Python using PyTorch's native FFI system.
- [ ] Reimplement sparse matrix operations and their gradient operators using PyTorch's C++ extension.
- [ ] Make the sparse matrix data type and operations compatible with `torch.fx` and `torchscript`.
- [ ] Make `DGLGraph` a pure Python wrapper of the exposed sparse matrix data type.
- [ ] Annotate all the exposed operators with proper type hints.
- [ ] Make homogeneous `DGLGraph` and its operations compatible with `torch.fx` and `torchscript`.
- [ ] Make heterogeneous `DGLGraph` and its operations compatible with `torch.fx` and `torchscript`.
- [ ] Integrate compiler optimizations from Graphiler paper (MLSys'21)
- [ ] Provide compiler-assisted solutions for automatic model inference.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.