0.7.2 Release Notes
This is a patch release targeting CUDA 11.3 and PyTorch 1.10. It contains (1) distributed training on heterogeneous graphs, and (2) bug fixes and code reorganization commits. The performance impact should be minimal.
To install with CUDA 11.3 support, run either
pip install dgl-cu113 -f https://data.dgl.ai/wheels/repo.html
or
conda install -c dglteam dgl-cuda11.3
Distributed Training on Heterogeneous Graphs
We have made the interface of distributed sampling on heterogeneous graph consistent with single-machine code. Please refer to https://github.com/dmlc/dgl/blob/0.7.x/examples/pytorch/rgcn/experimental/entity_classify_dist.py for the new code.
Other fixes
- [Bugfix] Fix bugs of farthest_point_sampler (#3327, @sangyx)
- [Bugfix] Fix sparse embeddings for PyTorch < 1.7 #3291 (#3333)
- Fixes bug in hg.update_all causing crash #3312 (#3345, @sanchit-misra)
- [Bugfix] And PYTHONPATH in server launch. (#3352)
- [CPU][Sampling][Performance] Improve sampling on the CPU. (#3274, @nv-dlasalle)
- [Performance, CPU] Rewriting OpenMP pragmas into parallel_for (#3171, @tpatejko)
- [Build] Fix OpenMP header inclusion for Mac builds (#3325)
- [Performance] improve coo2csr space complexity when row is not sorted (#3326)
- [BugFix] initialize data if null when converting from row sorted coo to csr (#3360)
- fix broadcast tensor dim in
dgl.broadcast_nodes
(#3351, @jwyyy) - [BugFix] fix typo in fakenews dataset variable name (#3363, @kayzliu)
- [Doc] Added md5sum info for OGB-LSC dataset (#3332, @msharmavikram)
- [Feature] Graceful handling of exceptions thrown within OpenMP blocks (#3353)
- Fix torch import in example (#3372, @jwyyy)
- [Distributed] Allow user to pass-in extra env parameters when launching a distributed training task. (#3375)
- [BugFix] extract gz into target dir (#3389)
- [Model] Refine GraphSAINT (#3328 @ljh1064126026 )
- [Bug] check dtype before convert to gk (#3414)
- [BugFix] add count_nonzero() into SA_Client (#3417)
- [Bug] Do not skip graphconv even no edge exists (#3416)
- Fix edge ID exclusion when both g and g_sampling are specified in EdgeDataLoader(#3322)
- [Bugfix] three bugs related to using DGL as a subdirectory(third_party) of another project. (#3379, @yuanzexi )
- [PyTorch][Bugfix] Use uint8 instead of bool in pytorch to be compatible with nightly version (#3406, #3454, @nv-dlasalle)
- [Fix] Use ==/!= to compare constant literals (str, bytes, int, float, tuple) (#3415, @cclauss)
- [Bugfix][Pytorch] Fix model save and load bug of stgcn_wave (#3303, @HaoWei-TomTom )
- [BugFix] Avoid Memory Leak Issue in PyTorch Backend (#3386, @chwan-rice )
- [Fix] Split nccl sparse push into two groups (#3404, @nv-dlasalle )
- [Doc] remove duplicate papers (#3393, @chwan-rice )
- Fix GINConv backward #3437 (#3440)
- [bugfix] Fix compilation with CUDA 11.5's CUB (#3468, @nv-dlasalle )
- [Example][Performance] Enable faster validation for pytorch graphsage example (#3361, @nv-dlasalle )
- [Doc] Evaluation Tutorial for Link Prediction (#3463)