* 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>
* Added graph updating method and tests. resolves#3488
* removed spaces around named args
* customizing indices for graph's idtype and ctx
* changing torch ops to generic backend ops
* changing tensors to np arrays
* created dgl merge function and tests
* Changed per-graph edge updates to single ag update
* removed update method and tests
* reformat newlines & spaces
* concatenating in one-shot instead of iteratively
Co-authored-by: Mufei Li <mufeili1996@gmail.com>
Co-authored-by: Quan (Andy) Gan <coin2028@hotmail.com>
* Split NCCL wrapper from sparse optimizer and sparse embedding
* Add more unit tests for single node nccl
* Fix unit test for tf
* Switch to device histogram
* Fix histgram issues
* Finish migration to histogram
* Handle cases with zero send/recieve data
* Start on partition object
* Get compiling
* Updates
* Add unit tests
* Switch to partition object
* Fix linting issues
* Rename partition file
* Add python doc
* Fix python assert and finish doxygen comments
* Remove stubs for range based partition to satisfy pylint
* Wrap unit test in GPU only
* Wrap explicit cuda call in ifdef
* Merge with partition.py
* update docstrings
* Cleanup partition_op
* Add Workspace object
* Switch to using workspace object
* Move last remainder based function out of nccl_api
* Add error messages
* Update docs with examples
* Fix linting erros
Co-authored-by: xiang song(charlie.song) <classicxsong@gmail.com>
* first commit
* some thoughts
* move around
* more commit
* more fixes
* now it uses torch allocator
* fix symbol export error
* fix
* fixes
* test fix
* add script
* building separate library per version
* fix for vs2019
* more fixes
* fix on windows build
* update jenkinsfile
* auto copy built dlls for windows
* lint and installation guide update
* fix
* specify conda environment
* set environment for ci
* fix
* fix
* fix
* fix again
* revert
* fix cmake
* fix
* switch to using python interpreter path
* remove scripts
* debug
* oops sorry
* Update index.rst
* Update index.rst
* copies automatically, no need for this
* do not print message if library not found
* tiny fixes
* debug on nightly
* replace add_compile_definitions to make CMake 3.5 happy
* fix linking to wrong lib for multiple pytorch envs
* changed building strategy
* fix nightly
* fix windows
* fix windows again
* setup bugfix
* address comments
* change README
* 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
* improve performance of sample_neighbors
* some more improve
* test script
* benchmarks
* multi process
* update more tests
* WIP
* adding two API for state saving
* add create from state
* upd test
* missing file
* wip: pickle/unpickle
* more c apis
* find the problem of empty data array
* add null array; pickling speed is bad
* still bad perf
* still bad perf
* wip
* fix the pickle speed test; now everything looks good
* minor fix
* bugfix
* some lint fix
* address comments
* more fix
* fix lint
* add utest for random.choice
* add utest for dgl.rand_graph
* fix cpp utests
* try fix ci
* fix bug in TF backend
* upd choice docstring
* address comments
* upd
* try fix compile
* add comment
* trying to refactor IndexSelect
* partial implementation
* add index select and assign for floats as well
* move to random choice source
* more updates
* fixes
* fixes
* more fixes
* adding python impl
* fixes
* unit test
* lint
* lint x2
* lint x3
* update metapath2vec
* debugging performance
* still debugging for performance
* tuning
* switching to succvec
* redo
* revert non-uniform sampler to use vector
* still not fast
* why does this crash with OpenMP???
* because there was a data race!!!
* add documentations and remove assign op
* lint
* lint x2
* lol what have i done
* lint x3
* fix and disable gpu testing
* bugfix
* generic random walk
* reorg the random walk source code
* Update randomwalks.h
* Update randomwalks_cpu.cc
* rename file
* move internal function to anonymous ns
* reorg & docstrings
* constant restart probability
* docstring fix
* more commit
* random walk with restart, tested
* some fixes
* switch to using NDArray for choice
* massive fix & docstring
* lint x?
* lint x??
* fix
* export symbols
* skip gpu test
* addresses comments
* replaces another VecToIdArray
* add randomwalks.h to include
* replace void * with template
* moving heterograph index to another file
* node view
* python interfaces
* heterograph init
* bug fixes
* docstring for readonly
* more docstring
* unit tests & lint
* oops
* oops x2
* removed node/edge addition
* addressed comments
* lint
* rw on frames with one node/edge type
* homograph with underlying heterograph demo
* view is not necessary
* bugfix
* replace
* scheduler, builtins not working yet
* moving bipartite.h to header
* moving back bipartite to bipartite.h
* oops
* asbits and copyto for bipartite
* tested update_all and send_and_recv
* lightweight node & edge type retrieval
* oops
* sorry
* removing obsolete code
* oops
* lint
* various bug fixes & more tests
* UDF tests
* multiple type number_of_nodes and number_of_edges
* docstring fixes
* more tests
* going for dict in initialization
* lint
* updated api as per discussions
* lint
* bug
* bugfix
* moving back bipartite impl to cc
* note on views
* fix
* rng refactor
* fix bugs
* unit test
* remove setsize
* lint
* fix test
* use explicit instantiation instead of inlining
* stricter test
* use tvm solution
* moved python interface to dgl.random
* lint
* address comments
* make getthreadid an inline function
* fix lint for graph_index.py
* pylint for base.py
* pylint for batched_graph.py
* pylint for frame.py; simplify and fix bugs in frame when index is slice type
* pylint for graph.py
* pylint for immutable_graph_index.py
* pylint for init.py
* pylint for rest files in root package
* pylint for _ffi package
* pylint for function package
* pylint for runtime package
* pylint for runtime.ir package
* add pylint to ci
* fix mx tests
* fix lint errors
* fix ci
* fix as requested
* fix lint
* add sse tutorial
* add mxnet tutorial ci
* fix ci
* fix ci
* fix ci
* fix ci
* fix ci
* fix ci
* Fix ci
* Fix ci
* Fix ci
* fix ci
* fix ci
* fix ci
* fix ci
* fix ci
* fix ci
* Fix CI
Fix CI image
* permission fix
* fix a bug in the code.
* small fix
* fix doc
* fix ci
* shorten the iters
* fix
* remove extra file
* add load_backend api to dynamically switch to another backend
* try fix
* fix tutorial
* fix tutorial
* fix bug in tutorial
* add examples in traversal.py
* message propagate methods
* use the new message propagation for tree-lstm
* update to the new name
* update propagate API doc
* update doc
* add propagate utest
* Add SH tutorials
* setup sphinx-gallery; work on graph tutorial
* draft dglgraph tutorial
* update readme to include document url
* rm obsolete file
* Draft the message passing tutorial
* Capsule code (#102)
* add capsule example
* clean code
* better naming
* better naming
* [GCN]tutorial scaffold
* fix capsule example code
* remove previous capsule example code
* graph struc edit
* modified: 2_graph.py
* update doc of capsule
* update capsule docs
* update capsule docs
* add msg passing prime
* GCN-GAT tutorial Section 1 and 2
* comment for API improvement
* section 3
* Tutorial API change (#115)
* change the API as discusses; toy example
* enable the new set/get syntax
* fixed pytorch utest
* fixed gcn example
* fixed gat example
* fixed mx utests
* fix mx utest
* delete apply edges; add utest for update_edges
* small change on toy example
* fix utest
* fix out in degrees bug
* update pagerank example and add it to CI
* add delitem for dataview
* make edges() return form that is compatible with send/update_edges etc
* fix index bug when the given data is one-int-tensor
* fix doc
* subgraph
* more test cases
* WIP
* new FrameRef and test
* separate nx init code
* WIP
* subgraph code and test
* line graph code and test
* adding new test for adding new features on line graphs
* no backtracking line graph
* fix inplace relabel
* model code for generative graphs
* batched version for dynamic graph generation using padding
* renaming function train back to forward
* remove old util function for padding DGMG
* override networkx clear to reset state, add dgl.nn
* Dynamic graph without batching
* use relative import path
* load dataset, pad batch
* bug fix
* experimental batch and unbatch
* dgmg batched version
* minor tweak
* move preprocessing padding into data loading
* batch graph test code
* minor
* batched graph class and test cases
* make dgl.nn.gcn a simple layer plus minor fix
* update dgmg model
* test forward using attribute field
* use frame append, minor changes
* moving networkx operations out of forward
* revert some changes
* remove structural immutability check
* fix edge list order problem in cached graph.
* minor fix
* fix bug in edge iter
* SPMV works
* gcn spmv on CPU
* change gcn style
* fix cached graph performance; fixed gcn dataset bug
* reorg dir
* non-batch spmv; partial update problem with shape change
* fix reorder problem; finish gcn-batch impl
* pop API
* GPU context