nv-dlasalle
1f2e696080
Prevent users from attempting to pin PyTorch non-contiguous tensors or views only encompassing part of tensor. ( #3992 )
...
* Disable pinning non-contiguous memory
* Prevent views from being converted for write
* Fix linting
* Add unit tests
* Improve error message for users
* Switch to pytest function
* exclude mxnet and tensorflow from inplace pinning
* Add skip
* Restrict to pytorch backend
* Use backend to retrieve device
* Fix capitalization in decorator
Co-authored-by: Quan (Andy) Gan <coin2028@hotmail.com >
2022-05-16 14:49:36 -07:00
Quan (Andy) Gan
0d878ff8ef
[Example] Cleaned GraphSAGE node classification example with PyTorch Lightning ( #3863 )
...
* cleaned pl node classification example
* conform to PL's method of updating the dataloader
* update
* lint
* fix test
* fix
2022-04-12 17:26:23 +08:00
Xin Yao
5fcd7f290f
[Feature] Enable UVA for GPU PinSAGE and RandomWalk ( #3857 )
...
* enable uva for pinsage sampler
* unit test
* modify some checks on the python side
* remove legacy random walk code
* update unit test
* update unit test
* fix unit test
* adjust checks
* move some checks to c++
* move max_nodes check to cuda kernel
* fix ci for tf
Co-authored-by: Quan (Andy) Gan <coin2028@hotmail.com >
Co-authored-by: nv-dlasalle <63612878+nv-dlasalle@users.noreply.github.com >
2022-04-11 20:01:23 +08:00
Quan (Andy) Gan
f758db386f
[Bug] Fix dtype mismatch in heterogeneous DataLoader ( #3878 )
...
* fix
* unit test
2022-03-26 13:56:21 +08:00
Quan (Andy) Gan
a0e8cf0d3e
[Bugfix] Fix UVA sampling with lazy feature slicing ( #3862 )
...
* fix uva sampling with features
* fix
* add is_listlike function to distinguish strings from sequence
* fix
Co-authored-by: nv-dlasalle <63612878+nv-dlasalle@users.noreply.github.com >
2022-03-24 20:13:01 +08:00
Quan (Andy) Gan
223a3da5ae
[Bugfix] Fix multiple bugs and code refactor ( #3841 )
...
* fix
* remove setcxx methods
* move pin flag to CSR and COO matrix
Co-authored-by: Jinjing Zhou <VoVAllen@users.noreply.github.com >
2022-03-24 18:24:49 +08:00
Quan (Andy) Gan
d41d07d0f6
[Doc and bugfix] Add docs and user guide and update tutorial for sampling pipeline ( #3774 )
...
* huuuuge update
* remove
* lint
* lint
* fix
* what happened to nccl
* update multi-gpu unsupervised graphsage example
* replace most of the dgl.mp.process with torch.mp.spawn
* update if condition for use_uva case
* update user guide
* address comments
* incorporating suggestions from @jermainewang
* oops
* fix tutorial to pass CI
* oops
* fix again
Co-authored-by: Xin Yao <xiny@nvidia.com >
2022-02-28 02:21:51 +08:00
Quan (Andy) Gan
3f138ebaaf
[Bugfix] Bug fixes in new dataloader ( #3727 )
...
* fixes
* fix
* more fixes
* update
* oops
* lint?
* temporarily revert - will fix in another PR
* more fixes
* skipping mxnet test
* address comments
* fix DDP
* fix edge dataloader exclusion problems
* stupid bug
* fix
* use_uvm option
* fix
* fixes
* fixes
* fixes
* fixes
* add evaluation for cluster gcn and ddp
* stupid bug again
* fixes
* move sanity checks to only support DGLGraphs
* pytorch lightning compatibility fixes
* remove
* poke
* more fixes
* fix
* fix
* disable test
* docstrings
* why is it getting a memory leak?
* fix
* update
* updates and temporarily disable forkingpickler
* update
* fix?
* fix?
* oops
* oops
* fix
* lint
* huh
* uh
* update
* fix
* made it memory efficient
* refine exclude interface
* fix tutorial
* fix tutorial
* fix graph duplication in CPU dataloader workers
* lint
* lint
* Revert "lint"
This reverts commit 805484dd553695111b5fb37f2125214a6b7276e9.
* Revert "lint"
This reverts commit 0bce411b2b415c2ab770343949404498436dc8b2.
* Revert "fix graph duplication in CPU dataloader workers"
This reverts commit 9e3a8cf34c175d3093c773f6bb023b155f2bd27f.
Co-authored-by: xiny <xiny@nvidia.com >
Co-authored-by: Jinjing Zhou <VoVAllen@users.noreply.github.com >
2022-02-22 01:30:31 +08:00
Xin Yao
738e8318fd
[Feature] CUDA UVA sampling for MultiLayerNeighborSampler ( #3674 )
...
* implement pin_memory/unpin_memory/is_pinned for dgl.graph
* update python docstring
* update c++ docstring
* add test
* fix the broken UnifiedTensor
* XPU_SWITCH for kDLCPUPinned
* a rough version ready for testing
* eliminate extra context parameter for pin/unpin
* update train_sampling
* fix linting
* fix typo
* multi-gpu uva sampling case
* disable new format materialization for pinned graphs
* update python doc for pin_memory_
* fix unit test
* UVA sampling for link prediction
* dispatch most csr ops
* update graphsage example to combine uva sampling and UnifiedTensor
* update graphsage example to combine uva sampling and UnifiedTensor
* update graphsage example to combine uva sampling and UnifiedTensor
* update doc
* update examples
* change unitgraph and heterograph's PinMemory to in-place
* update examples for multi-gpu uva sampling
* update doc
* fix linting
* fix cpu build
* fix is_pinned for DistGraph
* fix is_pinned for DistGraph
* update graphsage unsupervised example
* update doc for gpu sampling
* update some check for sampling device switching
* fix linting
* adapt for new dataloader
* fix linting
* fix
* fix some name issue
* adjust device check
* add unit test for uva sampling & fix some zero_copy bug
* fix linting
* update num_threads in graphsage examples
Co-authored-by: Quan (Andy) Gan <coin2028@hotmail.com >
Co-authored-by: Jinjing Zhou <VoVAllen@users.noreply.github.com >
2022-02-09 14:06:17 +08:00
Quan (Andy) Gan
701b4fccc2
[Sampling] New sampling pipeline plus asynchronous prefetching ( #3665 )
...
* initial update
* more
* more
* multi-gpu example
* cluster gcn, finalize homogeneous
* more explanation
* fix
* bunch of fixes
* fix
* RGAT example and more fixes
* shadow-gnn sampler and some changes in unit test
* fix
* wth
* more fixes
* remove shadow+node/edge dataloader tests for possible ux changes
* lints
* add legacy dataloading import just in case
* fix
* update pylint for f-strings
* fix
* lint
* lint
* lint again
* cherry-picking commit fa9f494
* oops
* fix
* add sample_neighbors in dist_graph
* fix
* lint
* fix
* fix
* fix
* fix tutorial
* fix
* fix
* fix
* fix warning
* remove debug
* add get_foo_storage apis
* lint
2022-01-30 16:13:00 +08:00
Quan (Andy) Gan
b8ce0f41a3
[Sampling] Cluster-GCN and ShaDow-GNN DataLoader ( #3487 )
...
* first commit
* next commit
* third commit
* add ShaDow-GNN sampler and unit tests
* fixes
* lint
* cr*p
* lint
* fix lint
* fixes and more unit tests
* more tests
* fix docs
* lint
* fix
* fix
* fix
* fixes
* fix doc
2021-11-16 13:16:25 +08:00
nv-dlasalle
f634950825
[Performance][Feature] Implement edge excluding in EdgeDataLoader on GPU ( #3226 )
...
* Update filter code
* Add unit tests
* Fixes
* Switch to indices
* Rename functions
* Fix linting
* Fix whitespace
* Add doc
* Fix heterograph
* Change workspace allocation
* Fix linting
* Fix docs in filter.py
* Add todo
Co-authored-by: Jinjing Zhou <VoVAllen@users.noreply.github.com >
Co-authored-by: Quan (Andy) Gan <coin2028@hotmail.com >
2021-08-19 12:24:15 -07:00
nv-dlasalle
a0390dde93
[Feature] Add dgl.utils.is_sorted_srcdst() ( #2685 )
...
* Add dgl.utils.is_sorted_srcdst
* Fix linting issues
* delete blank line
* Specify datatype to index tensor in test
* Force integer conversion
Co-authored-by: Minjie Wang <wmjlyjemaine@gmail.com >
Co-authored-by: Quan (Andy) Gan <coin2028@hotmail.com >
2021-07-02 11:29:24 +08:00
Quan (Andy) Gan
acd21a6d60
[Feature] Support direct creation from CSR and CSC ( #3045 )
...
* csr and csc creation
* fix
* fix
* fixes to adj transpose
* fine
* raise error if indptr did not match number of nodes
* fix
* huh?
* oh
Co-authored-by: Minjie Wang <wmjlyjemaine@gmail.com >
2021-06-25 10:05:47 +08:00
xiang song(charlie.song)
a7e941c379
[Feature] Add support for sparse embedding ( #2451 )
...
* Add sparse embedding for dgl and update rgcn example
* upd
* Fix
* Revert "Fix"
This reverts commit 4da87cdfb8b8c3506b7fc7376cd2385ba8045c2a.
* Fix
* upd
* upd
* Fix
* Add unitest and update impl
* fix
* Clean up rgcn example code
* upd
* upd
* update
* Fix
* update score
* sparse for sage
* remove model sparse
* upd
* upd
* remove global norm
* revert delete model_sparse.py
* update according to comments
* Fix doc
* upd
* Fix test
* upd
* lint
* lint
* lint
* upd
* upd
* clean up
Co-authored-by: Ubuntu <ubuntu@ip-172-31-56-220.ec2.internal >
2021-01-28 00:26:49 +08:00
Mufei Li
0c2a2ea1e2
[Bugfix] Handle a Corner Case of Batching after Removing Nodes/Edges ( #2465 )
...
* Update
* Update
* Update
Co-authored-by: Quan (Andy) Gan <coin2028@hotmail.com >
2021-01-05 22:22:03 +08:00
Quan (Andy) Gan
00edb94982
[Performance] Accelerate batching ( #2363 )
...
* speed up batching
* more fix
* lint
* fix
2020-11-24 17:39:00 +08:00
Quan (Andy) Gan
2ce426d956
[Bug] add_edges() crashes if the input tensor is empty ( #2100 )
...
* [Bug] add_edges() crashes if the input tensor is empty
* lint
* fix
2020-08-24 16:04:41 +08:00
Minjie Wang
f13b9b6212
[Doc] Scan the API docs and make many changes ( #2080 )
...
* WIP: api
* dgl.sampling, dgl.data
* dgl.sampling; dgl.dataloading
* sampling packages
* convert
* subgraph
* deprecate
* subgraph APIs
* All docstrings for convert/subgraph/transform
* almost all funcs under dgl namespace
* WIP: DGLGraph
* done graph query
* message passing functions
* lint
* fix merge error
* fix test
* lint
* fix
Co-authored-by: Quan Gan <coin2028@hotmail.com >
2020-08-20 23:26:49 +08:00
Mufei Li
be444e52d9
[Doc/Feature] Refactor, doc update and behavior fix for graphs ( #1983 )
...
* Update graph
* Fix for dgl.graph
* from_scipy
* Replace canonical_etypes with relations
* from_networkx
* Update for hetero_from_relations
* Roll back the change of canonical_etypes to relations
* heterograph
* bipartite
* Update doc
* Fix lint
* Fix lint
* Fix test cases
* Fix
* Fix
* Fix
* Fix
* Fix
* Fix
* Update
* Fix test
* Fix
* Update
* Use DGLError
* Update
* Update
* Update
* Update
* Fix
* Fix
* Fix
* Fix
* Fix
* Fix
* Fix
* Fix
* Update
* Fix
* Update
* Fix
* Fix
* Fix
* Update
* Fix
* Update
* Fix
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Fix
* Fix
* Update
* Update
* Update
* Update
* Update
* Update
* rewrite sanity checks
* delete unnecessary checks
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Update
* Fix
* Update
* Update
* Update
* Fix
* Fix
* Fix
* Update
* Fix
* Update
* Fix
* Fix
* Update
* Fix
* Update
* Fix
Co-authored-by: xiang song(charlie.song) <classicxsong@gmail.com >
Co-authored-by: Minjie Wang <wmjlyjemaine@gmail.com >
Co-authored-by: Quan Gan <coin2028@hotmail.com >
2020-08-18 04:26:29 +08:00
Quan (Andy) Gan
cd48435206
[Transform] Docstring and subframes ( #1962 )
...
* update knn graph docs
* more docs
* [Doc] transform module docstrings
* remove copy_ndata and copy_edata
* fix
* lint
* fix
* fix
* fix
* clean up docstrings
* fix docstring
* dtype specifications
* addresses comments
* fix
Co-authored-by: Mufei Li <mufeili1996@gmail.com >
Co-authored-by: xiang song(charlie.song) <classicxsong@gmail.com >
2020-08-13 10:41:43 +08:00
Quan (Andy) Gan
f5eb80d221
[Feature] Edge DataLoader for edge classification & link prediction ( #1828 )
...
* clean commit
* oops forgot the most important files
* use einsum
* copy feature from frontier to block
* Revert "copy feature from frontier to block"
This reverts commit 5224ec963eb6a3ef1b6ab74d8ecbd44e4e42f285.
* temp fix
* unit test
* fix
* revert jtnn
* lint
* fix win64
* docstring fixes and doc indexing
* revert einsum in sparse bidecoder
* fix some examples
* lint
* fix due to some tediousness in remove_edges
* addresses comments
* fix
* more jtnn fixes
* fix
2020-08-11 18:00:58 +08:00
Da Zheng
b9ef70e5ac
[Distributed] Set the number of threads correctly to speed up ( #1976 )
...
* temp fix omp.
* set server threads.
* add CAPI to set up OMP threads.
* fix.
* fix.
* update namesapce.
* set cpi properly.
* allow to config num worker threads.
* set #threads.
* fix.
2020-08-08 19:30:53 -07:00
Minjie Wang
22167f7203
[Refactor] Enable new kernel in all message passing APIs ( #1953 )
...
* WIP: frame refactor
* new frame
* simple update_all builtin
* move all subgraph routines into the same file
* sddmm & spmm schedule; node & edge udf
* degree bucketing
* some tricky 0deg corner cases
* bug in frame append
* merge test_hetero_basics and test_basics
* some code rearange
* fix test_heterograph
* add mean spmm
* enable all builtin combinations
* pass gpu test
* pass pytorch tests
* wip
* fix some pt debugging codes
* fix bug in mxnet backward
* pass all mxnet utests
* passed tf tests
* docstring
* lint
* lint
* fix broadcasting bugs
* add warning and clamp for mean reducer
* add test for zero-degree mean
* address comments
* lint
* small fix
2020-08-07 15:40:25 +08:00
Minjie Wang
f4608c2227
[CUDA][Kernel] A bunch of int64 kernels for COO and CSR ( #1883 )
...
* COO sort
* COOToCSR
* CSR2COO
* CSRSort; CSRTranspose
* pass all CSR tests
* lint
* remove int32 conversion
* fix tensorflow nn tests
* turn on CI
* fix
* addreess comments
2020-07-30 21:02:07 +08:00
Minjie Wang
44089c8b4d
[Refactor][Graph] Merge DGLGraph and DGLHeteroGraph ( #1862 )
...
* Merge
* [Graph][CUDA] Graph on GPU and many refactoring (#1791 )
* change edge_ids behavior and C++ impl
* fix unittests; remove utils.Index in edge_id
* pass mx and th tests
* pass tf test
* add aten::Scatter_
* Add nonzero; impl CSRGetDataAndIndices/CSRSliceMatrix
* CSRGetData and CSRGetDataAndIndices passed tests
* CSRSliceMatrix basic tests
* fix bug in empty slice
* CUDA CSRHasDuplicate
* has_node; has_edge_between
* predecessors, successors
* deprecate send/recv; fix send_and_recv
* deprecate send/recv; fix send_and_recv
* in_edges; out_edges; all_edges; apply_edges
* in deg/out deg
* subgraph/edge_subgraph
* adj
* in_subgraph/out_subgraph
* sample neighbors
* set/get_n/e_repr
* wip: working on refactoring all idtypes
* pass ndata/edata tests on gpu
* fix
* stash
* workaround nonzero issue
* stash
* nx conversion
* test_hetero_basics except update routines
* test_update_routines
* test_hetero_basics for pytorch
* more fixes
* WIP: flatten graph
* wip: flatten
* test_flatten
* test_to_device
* fix bug in to_homo
* fix bug in CSRSliceMatrix
* pass subgraph test
* fix send_and_recv
* fix filter
* test_heterograph
* passed all pytorch tests
* fix mx unittest
* fix pytorch test_nn
* fix all unittests for PyTorch
* passed all mxnet tests
* lint
* fix tf nn test
* pass all tf tests
* lint
* lint
* change deprecation
* try fix compile
* lint
* update METIDS
* fix utest
* fix
* fix utests
* try debug
* revert
* small fix
* fix utests
* upd
* upd
* upd
* fix
* upd
* upd
* upd
* upd
* upd
* trigger
* +1s
* [kernel] Use heterograph index instead of unitgraph index (#1813 )
* upd
* upd
* upd
* fix
* upd
* upd
* upd
* upd
* upd
* trigger
* +1s
* [Graph] Mutation for Heterograph (#1818 )
* mutation add_nodes and add_edges
* Add support for remove_edges, remove_nodes, add_selfloop, remove_selfloop
* Fix
Co-authored-by: Ubuntu <ubuntu@ip-172-31-51-214.ec2.internal >
* upd
* upd
* upd
* fix
* [Transfom] Mutable transform (#1833 )
* add nodesy
* All three
* Fix
* lint
* Add some test case
* Fix
* Fix
* Fix
* Fix
* Fix
* Fix
* fix
* triger
* Fix
* fix
Co-authored-by: Ubuntu <ubuntu@ip-172-31-51-214.ec2.internal >
* [Graph] Migrate Batch & Readout module to heterograph (#1836 )
* dgl.batch
* unbatch
* fix to device
* reduce readout; segment reduce
* change batch_num_nodes|edges to function
* reduce readout/ softmax
* broadcast
* topk
* fix
* fix tf and mx
* fix some ci
* fix batch but unbatch differently
* new checkk
* upd
* upd
* upd
* idtype behavior; code reorg
* idtype behavior; code reorg
* wip: test_basics
* pass test_basics
* WIP: from nx/ to nx
* missing files
* upd
* pass test_basics:test_nx_conversion
* Fix test
* Fix inplace update
* WIP: fixing tests
* upd
* pass test_transform cpu
* pass gpu test_transform
* pass test_batched_graph
* GPU graph auto cast to int32
* missing file
* stash
* WIP: rgcn-hetero
* Fix two datasety
* upd
* weird
* Fix capsuley
* fuck you
* fuck matthias
* Fix dgmg
* fix bug in block degrees; pass rgcn-hetero
* rgcn
* gat and diffpool fix
also fix ppi and tu dataset
* Tree LSTM
* pointcloud
* rrn; wip: sgc
* resolve conflicts
* upd
* sgc and reddit dataset
* upd
* Fix deepwalk, gindt and gcn
* fix datasets and sign
* optimization
* optimization
* upd
* upd
* Fix GIN
* fix bug in add_nodes add_edges; tagcn
* adaptive sampling and gcmc
* upd
* upd
* fix geometric
* fix
* metapath2vec
* fix agnn
* fix pickling problem of block
* fix utests
* miss file
* linegraph
* upd
* upd
* upd
* graphsage
* stgcn_wave
* fix hgt
* on unittests
* Fix transformer
* Fix HAN
* passed pytorch unittests
* lint
* fix
* Fix cluster gcn
* cluster-gcn is ready
* on fixing block related codes
* 2nd order derivative
* Revert "2nd order derivative"
This reverts commit 523bf6c249bee61b51b1ad1babf42aad4167f206.
* passed torch utests again
* fix all mxnet unittests
* delete some useless tests
* pass all tf cpu tests
* disable
* disable distributed unittest
* fix
* fix
* lint
* fix
* fix
* fix script
* fix tutorial
* fix apply edges bug
* fix 2 basics
* fix tutorial
Co-authored-by: yzh119 <expye@outlook.com >
Co-authored-by: xiang song(charlie.song) <classicxsong@gmail.com >
Co-authored-by: Ubuntu <ubuntu@ip-172-31-51-214.ec2.internal >
Co-authored-by: Ubuntu <ubuntu@ip-172-31-7-42.us-west-2.compute.internal >
Co-authored-by: Ubuntu <ubuntu@ip-172-31-1-5.us-west-2.compute.internal >
Co-authored-by: Ubuntu <ubuntu@ip-172-31-68-185.ec2.internal >
2020-07-28 14:30:41 +08:00