文件历史

提交图

1069 次代码提交

作者 SHA1 备注 提交日期
Quan (Andy) Gan 4aff59f775 [Sparse] Rename existing DGL sparse module. (#5066)
* rename

* next time i should use lintrunner
2022-12-26 13:55:48 +08:00
czkkkkkk 0159c3c11d [Sparse] Add SpSpMM for sparse-sparse and sparse-diag matrix multiplication. (#5050)
* [Sparse] Add SpSpMM

* Update matmul interface

* address comments

* fix test utils to generate only coalesced matrices

* fix linter

* fix ut

* fix

* rm print

Co-authored-by: Minjie Wang <wmjlyjemaine@gmail.com>
2022-12-24 15:31:09 +08:00
Quan (Andy) Gan f0ce2bea22 [Sparse] Sparse matrix reduction Python part (#5013)
* initial commit

* lint

* rename

* address comments

* add doctests

* address comments

* remove additional test

* add description

* lint

* lint

* lint

* Update test_reduction.py

Co-authored-by: Hongzhi (Steve), Chen <chenhongzhi.nkcs@gmail.com>
2022-12-22 16:49:29 +08:00
czkkkkkk 56ce60b061 [Sparse] Fix SpMM and SDDMM test precision problem (#5060) 2022-12-21 18:02:29 +08:00
czkkkkkk 1f2fcae3e2 [Sparse] Support SpMM and SDDMM (#5032)
* [Sparse] Support SpMM and SDDMM

* Add SDDMMAutoGrad

* Rename SpMMImpl and SDDMMImpl and move them to dgl_sparse/src/matmul.h

* Update comments

* Update

* Minor fix
2022-12-21 10:29:23 +08:00
Serge Panev f40db9b743 [Dist][Test] Add exit_code asserts in some distributed tests (#5053)
Signed-off-by: Serge Panev <spanev@nvidia.com>

Signed-off-by: Serge Panev <spanev@nvidia.com>
2022-12-21 09:03:13 +08:00
Mufei Li 11e6190579 [Sparse] Add Two Sparse Matrices with Different Sparsity, DiagMatrix.dense, Add SparseMatrix and DiagMatrix (#5044)
* Update

* undo wrong edit

* lint

* fix import

* Update

Co-authored-by: Ubuntu <ubuntu@ip-172-31-36-188.ap-northeast-1.compute.internal>
2022-12-20 20:15:37 +08:00
Xin Yao f4eef72628 [Fix core lib warning] Remove LooseVersion (#5026)
* replace LooseVersion with packaging.version

* import packaging from setuptools

* import packaging.version in dgl.utils

* format

* revert changes to apps/kg

* revert changes to _dataloading
2022-12-19 09:02:14 +08:00
Rhett Ying 9731e02325 [Dist] enable to chunk node/edge data into arbitrary number of chunks (#4930)
* [Dist] enable to chunk node/edge data into arbitrary number of chunks

* [Dist] enable to split node/edge data into arbitrary parts

* refine code

* Format boolean to uint8 forcely to avoid dist.scatter failure

* convert boolean to int8 before scatter and revert it after scatter

* refine code

* fix test

* refine code

* move test utilities into utils.py

* update comment

* fix empty data

* update

* update

* fix empty data issue

* release unnecessary mem

* release unnecessary mem

* release unnecessary mem

* release unnecessary mem

* release unnecessary mem

* remove unnecessary shuffle data

* separate array_split into standalone utility

* add example

Co-authored-by: xiang song(charlie.song) <classicxsong@gmail.com>
2022-12-15 10:01:39 +08:00
Mufei Li 354a211038 [Sparse] Elementwise ops for DiagMatrix and Elementwise Power for SparseMatrix (#5024)
* Update

* Update

* lint

* CI

* Update

Co-authored-by: Ubuntu <ubuntu@ip-172-31-36-188.ap-northeast-1.compute.internal>
2022-12-15 08:33:51 +08:00
Rhett Ying 32dc1af67e [Dist] generate partition meta for ParMETIS pipeline (#5020)
* [Dist] generate partition meta for ParMETIS
2022-12-14 21:15:54 +08:00
czkkkkkk d02e560e07 Revert "[Sparse] Add SpMM and SDDMM." (#5014)
* Revert "[Sparse] Add SpMM and SDDMM. (#4999)"

This reverts commit 15365d7855.

* lint
2022-12-12 19:37:08 +08:00
czkkkkkk 15365d7855 [Sparse] Add SpMM and SDDMM. (#4999)
* [Sparse] Add SpMM and SDDMM

* Update

* Add CSR and CSC SpMM tests
2022-12-12 15:37:09 +08:00
Mufei Li e01580d3b9 [Sparse] Misc fix for existing elementwise ops (#5003)
* Update

* Update

* Update

* Update

* update

* lint

* CI

* CI

* CI

Co-authored-by: Ubuntu <ubuntu@ip-172-31-36-188.ap-northeast-1.compute.internal>
2022-12-09 17:16:59 +08:00
Xin Yao aad3bd0484 [Bugfix] Fix empty tensors may being treated as pinned (#5005)
* fix empty tensor is treated as pinned

* avoid calling cudaHostGetDevicePointer on nullptr

* update empty array

* add a comment
2022-12-09 16:42:59 +08:00
Xin Yao 20fb4d4c31 [Lint] Add a formatter GitHub Action for ufmt and clang-format (#4977)
* add lint workflow

* add line number

* address comments

* update package versions

* remove autopep8 config
2022-12-08 13:32:08 +08:00
Zhiteng Li 279e2e8fba Add Graph Transformer Layer (Dense Computation) (#4959)
* Add GraphTransformerLayer (dense)

* beautify the python code with black

* refine according to mufei's comments

* fix AttributeError in unit test

* rename module as GraphormerLayer

* fix name issue

Co-authored-by: Mufei Li <mufeili1996@gmail.com>
2022-12-07 16:23:14 +08:00
Mufei Li a80bd9e039 Update (#4997)
Co-authored-by: Ubuntu <ubuntu@ip-172-31-36-188.ap-northeast-1.compute.internal>
2022-12-07 15:07:50 +08:00
Tingyu Wang ba21295cd5 [Model] Update CuGraphRelGraphConv to use new bindings from pylibcugraphops (#4965)
* update agg function with new bindings

* handle optional import in __init__

* raise error in RelGraphConvAgg when pylibcugraphops not imported

* Update tests/cugraph/cugraph-ops/test_cugraph_relgraphconv.py

Co-authored-by: Mufei Li <mufeili1996@gmail.com>

* Update tests/cugraph/cugraph-ops/test_cugraph_relgraphconv.py

Co-authored-by: Mufei Li <mufeili1996@gmail.com>

* use keyword args for readability

* add missing docstring to pass CI

* catch ImportError rather than ModuleNotFoundError

Co-authored-by: Mufei Li <mufeili1996@gmail.com>
2022-12-06 14:00:57 +08:00
Mufei Li 97fbd94dfc [Sparse] neg and inv (#4980)
* Update

* update

Co-authored-by: Ubuntu <ubuntu@ip-172-31-36-188.ap-northeast-1.compute.internal>
2022-12-05 21:19:27 +08:00
ZhenyuLU_Heliodore 93ecfa313a [NN] Add PathEncoder (#4956)
* Add PathEncoder to transformer.py

* add blank line at the and

* rename variabl sp to shortest_path

* Fixed corresponding problems

* Fixed certain bugs when running on CUDA

* changed clamp min from 0 to 1

Co-authored-by: Ubuntu <ubuntu@ip-172-31-14-146.ap-northeast-1.compute.internal>
Co-authored-by: Mufei Li <mufeili1996@gmail.com>
2022-12-05 13:47:51 +08:00
peizhou001 611393021a [API Deprecation] Remove candidates in DGLGraph (#4946) 2022-12-01 16:41:53 +08:00
Mufei Li e088acac00 [Sparse] Add val_like and Disable Setting Nonzero Values (#4972)
* Update

* Update

Co-authored-by: Ubuntu <ubuntu@ip-172-31-36-188.ap-northeast-1.compute.internal>
2022-12-01 14:09:36 +08:00
czkkkkkk 60b02f2fc8 [Sparse] Add SparseMatrix transposition (#4940) 2022-11-29 16:54:36 +08:00
peizhou001 08fd6cf826 [Feature] Add parquet support for node/edge features in chunked data (#4933) 2022-11-28 18:13:16 +08:00
Quan (Andy) Gan e0fc038db1 [Test] Fix duplicate seed generation in unit test (#4961)
* fix unit test

* oops
2022-11-28 16:20:31 +08:00
czkkkkkk 0a65559276 [Sparse] Support sparse format conversion (#4929)
* [Sparse] Support sparse format conversion

* Update

* Update
2022-11-27 17:01:18 +08:00
Serge Panev 815b88a63f [Dist][Test] Add blacklisting mechanism + misc fixes (#4950)
Signed-off-by: Serge Panev <spanev@nvidia.com>

Signed-off-by: Serge Panev <spanev@nvidia.com>
2022-11-25 17:50:39 +08:00
Rhett Ying cd3fa03035 [Dist] init node/edge data store for Node/EdgeDataView in appropriate place (#4906)
* [Dist] instantiate NodeDataView in lazy mode

* fix test failure

* init node/edge data store at the very beginning

* fix test failures

* refine comment

* add more tests
2022-11-21 09:52:36 +08:00
Zhiteng Li 16eba6e88c [NN] Add biased multi-head attention module (dense) (#4916)
* Add biased multi-head attention module (dense)

* fix lint issues

* refine according to dongyu's comments

Co-authored-by: rudongyu <ru_dongyu@outlook.com>
2022-11-20 14:55:25 +08:00
kylasa c8ea9fa4e4 [Dist] Flexible pipeline - Initial commit (#4733)
* Flexible pipeline - Initial commit

1. Implementation of flexible pipeline feature.
2. With this implementation, the pipeline now supports multiple partitions per process. And also assumes that num_partitions is always a multiple of num_processes.

* Update test_dist_part.py

* Code changes to address review comments

* Code refactoring of exchange_features function into two functions for better readability

* Upadting test_dist_part to fix merge issues with the master branch

* corrected variable names...

* Fixed code refactoring issues.

* Provide missing function arguments to exchange_feature function

* Providing the missing function argument to fix error.

* Provide missing function argument to 'get_shuffle_nids' function.

* Repositioned a variable within its scope.

* Removed tab space which is causing the indentation problem

* Fix issue with the CI test framework, which is the root cause for the failure of the CI tests.

1. Now we read files specific to the partition-id and store this data separately, identified by the local_part_id, in the local process.
2. Similarly as above, we also differentiate the node and edge features type_ids with the same keys as above.
3. These above two changes will help up to get the appropriate feature data during the feature exchange and send to the destination process correctly.

* Correct the parametrization for the CI unit test cases.

* Addressing Rui's code review comments.

* Addressing code review comments.
2022-11-18 08:21:55 -08:00
Tingyu Wang 4ecd2c8585 [Model] Add dgl.nn.CuGraphRelGraphConv model (#4826)
* added relgraphconv

* add tests for CuGraphRelGraphConv

* move test to tests directory

* update docs

* address PR review 1

* address PR review, continued

* remove stashing ctx.device

* make fanout optional

* fanout -> max_in_degree

* improve docstrings consistency

* initialize parameters directly in __init__

* get rid of shared memory size check

* improve docs

* format comments

* skip test case for regularizer=None

Co-authored-by: Mufei Li <mufeili1996@gmail.com>
Co-authored-by: Hongzhi (Steve), Chen <chenhongzhi.nkcs@gmail.com>
2022-11-18 14:04:51 +08:00
czkkkkkk 06438d7033 [Sparse] Link to DGL (#4877) 2022-11-17 10:14:08 +08:00
Rhett Ying 6e1cc7dac2 [Dist] fix is_node check according to policy (#4911)
* [Dist] fix is_node check according to policy

* add more tests
2022-11-17 09:27:50 +08:00
Mufei Li ff090f698e [Sparse] Set Value and Dense (#4897)
* Update

* dense

* Update

* Update

* Update

* Update

* Update

Co-authored-by: Ubuntu <ubuntu@ip-172-31-36-188.ap-northeast-1.compute.internal>
2022-11-16 19:05:56 +08:00
Zhiteng Li c235d17d2d [Transform] Add ToLevi transform (#4884)
* add ToLevi transform

* fix parameter typo

* fix lint issues

* fix device issue

* refine according to dongyu's comments

Co-authored-by: rudongyu <ru_dongyu@outlook.com>
2022-11-16 11:54:27 +08:00
peizhou001 3132da2826 Deprecate (#4864)
rename DGLHeteroGraph to DGLGraph
2022-11-15 10:01:01 +08:00
dddg617 ee9887d66a [Fix]Support HGT mini-batch (#4664)
* [Fix]Support HGT mini-batch

* [Test] Update HGT test

* [Conv] nightly update conv

* [Conv] nightly update
2022-11-14 16:18:39 +08:00
Serge Panev f4ee96db6c [Dist][Test] Add tests for multi-node DistDataLoader, DistNodeDataLoader, DistEdgeDataLoader (#4846)
Signed-off-by: Serge Panev <spanev@nvidia.com>

Signed-off-by: Serge Panev <spanev@nvidia.com>
2022-11-12 15:47:23 +08:00
Xin Yao a8f9d5ef92 [Bugfix] Fix that half-precision SpMM produce incorrect results (#4842)
* update accumulator

* rename half to __half

* add bfloat16

* simplify code

* fix another case

* add unit test

* disable half-precision SpMMCoo

* fix lint
2022-11-10 08:49:31 +08:00
Hongzhi (Steve), Chen 9fe216df31 [Misc] Update cpplint. (#4844)
Co-authored-by: Steve <ubuntu@ip-172-31-34-29.ap-northeast-1.compute.internal>
2022-11-09 15:44:43 +08:00
Rhett Ying 5f0b61b858 [Dist] enable access DistGraph.edges via canonical etype (#4814)
* [Dist] enable access DistGraph.edges via canonical etype

* refine code

* refine test

* refine code
2022-11-07 21:35:41 +08:00
czkkkkkk 7c059e86c7 [Sparse] Add sparse matrix C++ implementation (#4773)
* [Sparse] Add sparse matrix C++ implementation

* Add documentation

* Update

* Minor fix

* Move Python code to dgl/mock_sparse2

* Move headers to include

* lint

* Update

* Add dgl_sparse directory

* Move src code to dgl_sparse

* Add __init__.py in tests to avoid naming conflict

* Add dgl sparse so in Jenkinsfile

* Complete docstring & SparseMatrix basic op

* lint

* Disable win tests
2022-11-07 18:01:19 +08:00
Hongzhi (Steve), Chen 8ac27dad1a [Misc] clang-format auto fix. (#4824)
* [Misc] clang-format auto fix.

* blabla

* ablabla

* blabla

Co-authored-by: Steve <ubuntu@ip-172-31-34-29.ap-northeast-1.compute.internal>
2022-11-07 10:39:34 +08:00
Hongzhi (Steve), Chen bcd3768426 [Misc] Replace /*! with /**. (#4823)
* replace

* blabla

* balbla

* blabla

Co-authored-by: Steve <ubuntu@ip-172-31-34-29.ap-northeast-1.compute.internal>
2022-11-07 08:16:41 +08:00
Hongzhi (Steve), Chen 619d735df5 [Misc] Replace \xxx with @xxx in structured comment. (#4822)
* param

* brief

* note

* return

* tparam

* brief2

* file

* return2

* return

* blabla

* all

Co-authored-by: Steve <ubuntu@ip-172-31-34-29.ap-northeast-1.compute.internal>
2022-11-07 00:22:45 +08:00
Xin Yao 96297fb8fd [Feature] Add bfloat16 (bf16) support (#4648)
* add bf16 specializations

* remove SWITCH_BITS

* enable amp for bf16

* remove SWITCH_BITS for cpu kernels

* enbale bf16 based on CUDART

* fix compiling for sm<80

* fix cpu build

* enable unit tests

* update doc

* disable test for CUDA < 11.0

* address comments

* address comments
2022-11-06 19:48:36 +08:00
rudongyu 1d2291943e [Transform] Add shortest distance (#4799)
* shortest dist

* update

* address issues

* update

* fix indent

* lint

* fix indent
2022-11-06 14:04:14 +08:00
Hongzhi (Steve), Chen 33a2d9e1b6 [Misc] clang-format auto fix. (#4812)
* [Misc] clang-format auto fix.

* manual

Co-authored-by: Steve <ubuntu@ip-172-31-34-29.ap-northeast-1.compute.internal>
2022-11-04 14:24:20 +08:00
Rhett Ying ed8e9c4440 [Dist] deprecate etype and always use canonical etype for partition and load (#4777)
* [Dist] deprecate etype and always use canonical etype for partition and load

* enable canonical etypes in dist part pipeline

* resolve rebase conflicts

* fix lint

* fix test failure

* throw exception if outdated part config is loaded

* refine

* refine

* revert unnecessary change

* fix typo
2022-11-04 10:08:18 +08:00