Minjie Wang
fc9d30fae4
[Graph] add local scope function ( #735 )
...
* add local scope function
* fix lint
* fix docstring
* change local_scope to local_var; add context manager
* address comments
2019-08-02 00:11:48 -04:00
Minjie Wang
67dc11971f
[Refactor] Use object system for all CAPIs ( #716 )
...
* WIP: using object system for graph
* c++ side refactoring done; compiled
* remove stale apis
* fix bug in DGLGraphCreate; passed test_graph.py
* fix bug in python modify; passed utest for pytorch/cpu
* fix lint
* address comments
2019-07-23 12:47:05 -04:00
Zihao Ye
baa16231f3
[Feature] Remove nodes/edges. ( #599 )
...
* upd
* upd
* reformat
* upd
* upd
* add test
* fix arange
* fix slight bug
* upd
* trigger
* upd docs
* upd
* upd
* upd
* change subgraph to be raw data wrapper
* upd
* fix test
2019-06-08 13:44:36 +08:00
Lingfan Yu
653428bdc7
[Feature][Kernel] DGL kernel support ( #596 )
...
* [Kernel] Minigun integration and fused kernel support (#519 )
* kernel interface
* add minigun
* Add cuda build
* functors
* working on binary elewise
* binary reduce
* change kernel interface
* WIP
* wip
* fix minigun
* compile
* binary reduce kernels
* compile
* simple test passed
* more reducers
* fix thrust problem
* fix cmake
* fix cmake; add proper guard for atomic
* WIP: bcast
* WIP
* bcast kernels
* update to new minigun pass-by-value practice
* broadcasting dim
* add copy src and copy edge
* fix linking
* fix none array problem
* fix copy edge
* add device_type and device_id to backend operator
* cache csr adj, remove cache for adjmat and incmat
* custom ops in backend and pytorch impl
* change dgl-mg kernel python interface
* add id_mapping var
* clean up plus v2e spmv schedule
* spmv schedule & clean up fall back
* symbolic message and reduce func, remove bundle func
* new executors
* new backend interface for dgl kernels and pytorch impl
* minor fix
* fix
* fix docstring, comments, func names
* nodeflow
* fix message id mapping and bugs...
* pytorch test case & fix
* backward binary reduce
* fix bug
* WIP: cusparse
* change to int32 csr for cusparse workaround
* disable cusparse
* change back to int64
* broadcasting backward
* cusparse; WIP: add rev_csr
* unit test for kernels
* pytorch backward with dgl kernel
* edge softmax
* fix backward
* improve softmax
* cache edge on device
* cache mappings on device
* fix partial forward code
* cusparse done
* copy_src_sum with cusparse
* rm id getter
* reduce grad for broadcast
* copy edge reduce backward
* kernel unit test for broadcasting
* full kernel unit test
* add cpu kernels
* edge softmax unit test
* missing ref
* fix compile and small bugs
* fix bug in bcast
* Add backward both
* fix torch utests
* expose infershape
* create out tensor in python
* fix c++ lint
* [Kernel] Add GPU utest and kernel utest (#524 )
* fix gpu utest
* cuda utest runnable
* temp disable test nodeflow; unified test for kernel
* cuda test kernel done
* [Kernel] Update kernel branch (#550 )
* [Model] add multiprocessing training with sampling. (#484 )
* reorganize sampling code.
* add multi-process training.
* speed up gcn_cv
* fix graphsage_cv.
* add new API in graph store.
* update barrier impl.
* support both local and distributed training.
* fix multiprocess train.
* fix.
* fix barrier.
* add script for loading data.
* multiprocessing sampling.
* accel training.
* replace pull with spmv for speedup.
* nodeflow copy from parent with context.
* enable GPU.
* fix a bug in graph store.
* enable multi-GPU training.
* fix lint.
* add comments.
* rename to run_store_server.py
* fix gcn_cv.
* fix a minor bug in sampler.
* handle error better in graph store.
* improve graphsage_cv for distributed mode.
* update README.
* fix.
* update.
* [Tutorial] add sampling tutorial. (#522 )
* add sampling tutorial.
* add readme
* update author list.
* fix indent in the code.
* rename the file.
* update tutorial.
* fix the last API.
* update image.
* [BUGFIX] fix the problems in the sampling tutorial. (#523 )
* add index.
* update.
* update tutorial.
* fix gpu utest
* cuda utest runnable
* temp disable test nodeflow; unified test for kernel
* cuda test kernel done
* Fixing typo in JTNN after interface change (#536 )
* [BugFix] Fix getting src and dst id of ALL edges in NodeFlow.apply_block (#515 )
* [Bug Fix] Fix inplace op at backend (#546 )
* Fix inplace operation
* fix line seprator
* [Feature] Add batch and unbatch for immutable graph (#539 )
* Add batch and unbatch for immutable graph
* fix line seprator
* fix lintr
* remove unnecessary include
* fix code review
* [BUGFix] Improve multi-processing training (#526 )
* fix.
* add comment.
* remove.
* temp fix.
* initialize for shared memory.
* fix graphsage.
* fix gcn.
* add more unit tests.
* add more tests.
* avoid creating shared-memory exclusively.
* redefine remote initializer.
* improve initializer.
* fix unit test.
* fix lint.
* fix lint.
* initialize data in the graph store server properly.
* fix test.
* fix test.
* fix test.
* small fix.
* add comments.
* cleanup server.
* test graph store with a random port.
* print.
* print to stderr.
* test1
* test2
* remove comment.
* adjust the initializer signature.
* [API] update graph store API. (#549 )
* add init_ndata and init_edata in DGLGraph.
* adjust SharedMemoryGraph API.
* print warning.
* fix comment.
* update example
* fix.
* fix examples.
* add unit tests.
* add comments.
* [Refactor] Immutable graph index (#543 )
* WIP
* header
* WIP .cc
* WIP
* transpose
* wip
* immutable graph .h and .cc
* WIP: nodeflow.cc
* compile
* remove all tmp dl managed ctx; they caused refcount issue
* one simple test
* WIP: testing
* test_graph
* fix graph index
* fix bug in sampler; pass pytorch utest
* WIP on mxnet
* fix lint
* fix mxnet unittest w/ unfortunate workaround
* fix msvc
* fix lint
* SliceRows and test_nodeflow
* resolve reviews
* resolve reviews
* try fix win ci
* try fix win ci
* poke win ci again
* poke
* lazy multigraph flag; stackoverflow error
* revert node subgraph test
* lazy object
* try fix win build
* try fix win build
* poke ci
* fix build script
* fix compile
* add a todo
* fix reviews
* fix compile
* [Kernel] Update kernel branch (#576 )
* [Model] add multiprocessing training with sampling. (#484 )
* reorganize sampling code.
* add multi-process training.
* speed up gcn_cv
* fix graphsage_cv.
* add new API in graph store.
* update barrier impl.
* support both local and distributed training.
* fix multiprocess train.
* fix.
* fix barrier.
* add script for loading data.
* multiprocessing sampling.
* accel training.
* replace pull with spmv for speedup.
* nodeflow copy from parent with context.
* enable GPU.
* fix a bug in graph store.
* enable multi-GPU training.
* fix lint.
* add comments.
* rename to run_store_server.py
* fix gcn_cv.
* fix a minor bug in sampler.
* handle error better in graph store.
* improve graphsage_cv for distributed mode.
* update README.
* fix.
* update.
* [Tutorial] add sampling tutorial. (#522 )
* add sampling tutorial.
* add readme
* update author list.
* fix indent in the code.
* rename the file.
* update tutorial.
* fix the last API.
* update image.
* [BUGFIX] fix the problems in the sampling tutorial. (#523 )
* add index.
* update.
* update tutorial.
* fix gpu utest
* cuda utest runnable
* temp disable test nodeflow; unified test for kernel
* cuda test kernel done
* Fixing typo in JTNN after interface change (#536 )
* [BugFix] Fix getting src and dst id of ALL edges in NodeFlow.apply_block (#515 )
* [Bug Fix] Fix inplace op at backend (#546 )
* Fix inplace operation
* fix line seprator
* [Feature] Add batch and unbatch for immutable graph (#539 )
* Add batch and unbatch for immutable graph
* fix line seprator
* fix lintr
* remove unnecessary include
* fix code review
* [BUGFix] Improve multi-processing training (#526 )
* fix.
* add comment.
* remove.
* temp fix.
* initialize for shared memory.
* fix graphsage.
* fix gcn.
* add more unit tests.
* add more tests.
* avoid creating shared-memory exclusively.
* redefine remote initializer.
* improve initializer.
* fix unit test.
* fix lint.
* fix lint.
* initialize data in the graph store server properly.
* fix test.
* fix test.
* fix test.
* small fix.
* add comments.
* cleanup server.
* test graph store with a random port.
* print.
* print to stderr.
* test1
* test2
* remove comment.
* adjust the initializer signature.
* [API] update graph store API. (#549 )
* add init_ndata and init_edata in DGLGraph.
* adjust SharedMemoryGraph API.
* print warning.
* fix comment.
* update example
* fix.
* fix examples.
* add unit tests.
* add comments.
* [Refactor] Immutable graph index (#543 )
* WIP
* header
* WIP .cc
* WIP
* transpose
* wip
* immutable graph .h and .cc
* WIP: nodeflow.cc
* compile
* remove all tmp dl managed ctx; they caused refcount issue
* one simple test
* WIP: testing
* test_graph
* fix graph index
* fix bug in sampler; pass pytorch utest
* WIP on mxnet
* fix lint
* fix mxnet unittest w/ unfortunate workaround
* fix msvc
* fix lint
* SliceRows and test_nodeflow
* resolve reviews
* resolve reviews
* try fix win ci
* try fix win ci
* poke win ci again
* poke
* lazy multigraph flag; stackoverflow error
* revert node subgraph test
* lazy object
* try fix win build
* try fix win build
* poke ci
* fix build script
* fix compile
* add a todo
* fix reviews
* fix compile
* all demo use python-3 (#555 )
* [DEMO] Reproduce numbers of distributed training in AMLC giant graph paper (#556 )
* update
* update
* update
* update num_hops
* fix bug
* update
* report numbers of distributed training in AMLC giant graph paper
* [DEMO] Remove duplicate code for sampling (#557 )
* update
* update
* re-use single-machine code
* update
* use relative path
* update
* update
* update
* add __init__.py
* add __init__.py
* import sys, os
* fix typo
* update
* [Perf] Improve performance of graph store. (#554 )
* fix.
* use inplace.
* move to shared memory graph store.
* fix.
* add more unit tests.
* fix.
* fix test.
* fix test.
* disable test.
* fix.
* [BUGIFX] fix a bug in edge_ids (#560 )
* add test.
* fix compute.
* fix test.
* turn on test.
* fix a bug.
* add test.
* fix.
* disable test.
* [DEMO] Add Pytorch demo for distributed sampler (#562 )
* update
* update
* update
* add sender
* update
* remove duplicate cpde
* [Test] Add gtest to project (#547 )
* add gtest module
* add gtest
* fix
* Update CMakeLists.txt
* Update README.md
* [Perf] lazily create msg_index. (#563 )
* lazily create msg_index.
* update test.
* [BUGFIX] fix bugs for running GCN on giant graphs. (#561 )
* load mxnet csr.
* enable load large csr.
* fix
* fix.
* fix int overflow.
* fix test.
* [BugFix] Fix error when bfs_level = 0 in Entity Classification with RGCN (#559 )
* [DEMO] Update demo of distributed sampler (#564 )
* update
* update
* update demo
* add network cpp test (#565 )
* Add unittest for C++ RPC (#566 )
* [CI] Fix CI for cpp test (#570 )
* fix CI for cpp test
* update port number
* [Docker] update docker image (#575 )
* update docker image
* specify lint version
* rm torch import from unified tests
* [Kernel][Scheduler][MXNet] Scheduler for DGL kernels and MXNet backend support (#541 )
* [Model] add multiprocessing training with sampling. (#484 )
* reorganize sampling code.
* add multi-process training.
* speed up gcn_cv
* fix graphsage_cv.
* add new API in graph store.
* update barrier impl.
* support both local and distributed training.
* fix multiprocess train.
* fix.
* fix barrier.
* add script for loading data.
* multiprocessing sampling.
* accel training.
* replace pull with spmv for speedup.
* nodeflow copy from parent with context.
* enable GPU.
* fix a bug in graph store.
* enable multi-GPU training.
* fix lint.
* add comments.
* rename to run_store_server.py
* fix gcn_cv.
* fix a minor bug in sampler.
* handle error better in graph store.
* improve graphsage_cv for distributed mode.
* update README.
* fix.
* update.
* [Tutorial] add sampling tutorial. (#522 )
* add sampling tutorial.
* add readme
* update author list.
* fix indent in the code.
* rename the file.
* update tutorial.
* fix the last API.
* update image.
* [BUGFIX] fix the problems in the sampling tutorial. (#523 )
* add index.
* update.
* update tutorial.
* fix gpu utest
* cuda utest runnable
* temp disable test nodeflow; unified test for kernel
* cuda test kernel done
* edge softmax module
* WIP
* Fixing typo in JTNN after interface change (#536 )
* mxnet backend support
* improve reduce grad
* add max to unittest backend
* fix kernel unittest
* [BugFix] Fix getting src and dst id of ALL edges in NodeFlow.apply_block (#515 )
* lint
* lint
* win build
* [Bug Fix] Fix inplace op at backend (#546 )
* Fix inplace operation
* fix line seprator
* [Feature] Add batch and unbatch for immutable graph (#539 )
* Add batch and unbatch for immutable graph
* fix line seprator
* fix lintr
* remove unnecessary include
* fix code review
* [BUGFix] Improve multi-processing training (#526 )
* fix.
* add comment.
* remove.
* temp fix.
* initialize for shared memory.
* fix graphsage.
* fix gcn.
* add more unit tests.
* add more tests.
* avoid creating shared-memory exclusively.
* redefine remote initializer.
* improve initializer.
* fix unit test.
* fix lint.
* fix lint.
* initialize data in the graph store server properly.
* fix test.
* fix test.
* fix test.
* small fix.
* add comments.
* cleanup server.
* test graph store with a random port.
* print.
* print to stderr.
* test1
* test2
* remove comment.
* adjust the initializer signature.
* try
* fix
* fix
* fix
* fix
* fix
* try
* test
* test
* test
* try
* try
* try
* test
* fix
* try gen_target
* fix gen_target
* fix msvc var_args expand issue
* fix
* [API] update graph store API. (#549 )
* add init_ndata and init_edata in DGLGraph.
* adjust SharedMemoryGraph API.
* print warning.
* fix comment.
* update example
* fix.
* fix examples.
* add unit tests.
* add comments.
* [Refactor] Immutable graph index (#543 )
* WIP
* header
* WIP .cc
* WIP
* transpose
* wip
* immutable graph .h and .cc
* WIP: nodeflow.cc
* compile
* remove all tmp dl managed ctx; they caused refcount issue
* one simple test
* WIP: testing
* test_graph
* fix graph index
* fix bug in sampler; pass pytorch utest
* WIP on mxnet
* fix lint
* fix mxnet unittest w/ unfortunate workaround
* fix msvc
* fix lint
* SliceRows and test_nodeflow
* resolve reviews
* resolve reviews
* try fix win ci
* try fix win ci
* poke win ci again
* poke
* lazy multigraph flag; stackoverflow error
* revert node subgraph test
* lazy object
* try fix win build
* try fix win build
* poke ci
* fix build script
* fix compile
* add a todo
* fix reviews
* fix compile
* WIP
* WIP
* all demo use python-3 (#555 )
* ToImmutable and CopyTo
* [DEMO] Reproduce numbers of distributed training in AMLC giant graph paper (#556 )
* update
* update
* update
* update num_hops
* fix bug
* update
* report numbers of distributed training in AMLC giant graph paper
* [DEMO] Remove duplicate code for sampling (#557 )
* update
* update
* re-use single-machine code
* update
* use relative path
* update
* update
* update
* add __init__.py
* add __init__.py
* import sys, os
* fix typo
* update
* [Perf] Improve performance of graph store. (#554 )
* fix.
* use inplace.
* move to shared memory graph store.
* fix.
* add more unit tests.
* fix.
* fix test.
* fix test.
* disable test.
* fix.
* [BUGIFX] fix a bug in edge_ids (#560 )
* add test.
* fix compute.
* fix test.
* turn on test.
* fix a bug.
* add test.
* fix.
* disable test.
* DGLRetValue DGLContext conversion
* [DEMO] Add Pytorch demo for distributed sampler (#562 )
* update
* update
* update
* add sender
* update
* remove duplicate cpde
* [Test] Add gtest to project (#547 )
* add gtest module
* add gtest
* fix
* Update CMakeLists.txt
* Update README.md
* Add support to convert immutable graph to 32 bits
* [Perf] lazily create msg_index. (#563 )
* lazily create msg_index.
* update test.
* fix binary reduce following new minigun template
* enable both int64 and int32 kernels
* [BUGFIX] fix bugs for running GCN on giant graphs. (#561 )
* load mxnet csr.
* enable load large csr.
* fix
* fix.
* fix int overflow.
* fix test.
* new kernel interface done for CPU
* docstring
* rename & docstring
* copy reduce and backward
* [BugFix] Fix error when bfs_level = 0 in Entity Classification with RGCN (#559 )
* [DEMO] Update demo of distributed sampler (#564 )
* update
* update
* update demo
* adapt cuda kernels to the new interface
* add network cpp test (#565 )
* fix bug
* Add unittest for C++ RPC (#566 )
* [CI] Fix CI for cpp test (#570 )
* fix CI for cpp test
* update port number
* [Docker] update docker image (#575 )
* update docker image
* specify lint version
* rm torch import from unified tests
* remove pytorch-specific test_function
* fix unittest
* fix
* fix unittest backend bug in converting tensor to numpy array
* fix
* mxnet version
* [BUGFIX] fix for MXNet 1.5. (#552 )
* remove clone.
* turn on numpy compatible.
* Revert "remove clone."
This reverts commit 17bbf76ed72ff178df6b3f35addc428048672457.
* revert format changes
* fix mxnet api name
* revert mistakes in previous revert
* roll back CI to 20190523 build
* fix unittest
* disable test_shared_mem_store.py for now
* remove mxnet/test_specialization.py
* sync win64 test script
* fix lowercase
* missing backend in gpu unit test
* transpose to get forward graph
* pass update all
* add sanity check
* passing test_specialization.py
* fix and pass test_function
* fix check
* fix pytorch softmax
* mxnet kernels
* c++ lint
* pylint
* try
* win build
* fix
* win
* ci enable gpu build
* init submodule recursively
* backend docstring
* try
* test win dev
* doc string
* disable pytorch test_nn
* try to fix windows issue
* bug fixed, revert changes
* [Test] fix CI. (#586 )
* disable unit test in mxnet tutorial.
* retry socket connection.
* roll back to set_np_compat
* try to fix multi-processing test hangs when it fails.
* fix test.
* fix.
* doc string
* doc string and clean up
* missing field in ctypes
* fix node flow schedule and unit test
* rename
* pylint
* copy from parent default context
* fix unit test script
* fix
* demo bug in nodeflow gpu test
* [Kernel][Bugfix] fix nodeflow bug (#604 )
* fix nodeflow bug
* remove debug code
* add build gtest option
* fix cmake; fix graph index bug in spmv.py
* remove clone
* fix div rhs grad bug
* [Kernel] Support full builtin method, edge softmax and unit tests (#605 )
* add full builtin support
* unit test
* unit test backend
* edge softmax
* apply edge with builtin
* fix kernel unit test
* disable mxnet test_shared_mem_store
* gen builtin reduce
* enable mxnet gpu unittest
* revert some changes
* docstring
* add note for the hack
* [Kernel][Unittest][CI] Fix MXNet GPU CI (#607 )
* update docker image for MXNet GPU CI
* force all dgl graph input and output on CPU
* fix gpu unittest
* speedup compilation
* add some comments
* lint
* add more comments
* fix as requested
* add some comments
* comment
* lint
* lint
* update pylint
* fix as requested
* lint
* lint
* lint
* docstrings of python DGL kernel entries
* disable lint warnings on arguments in kernel.py
* fix docstring in scheduler
* fix some bug in unittest; try again
* Revert "Merge branch 'kernel' of github.com:zzhang-cn/dgl into kernel"
This reverts commit 1d2299e68b004182ea6130b088de1f1122b18a49, reversing
changes made to ddc97fbf1bec2b7815c0da7c74f7ecb2f428889b.
* Revert "fix some bug in unittest; try again"
This reverts commit ddc97fbf1bec2b7815c0da7c74f7ecb2f428889b.
* more comprehensive kernel test
* remove shape check in test_specialization
2019-06-06 15:47:55 -04:00
Minjie Wang
33b9c38389
[Bugfix] fix bug in pickling ( #456 )
...
* fix bug in pickling
* fix lint
2019-03-18 23:48:20 -04:00
Minjie Wang
ca2a7e1ca1
[Refactor] Nodeflow, sampling, CAPI ( #430 )
...
* enable cython
* add helper function and data structure for void_p vector return
* move sampler from graph index to contrib.sampling
* WIP
* WIP
* refactor layer sampling
* pass tests
* fix lint
* fix graphsage
* remove comments
* pickle test
* fix comments
* update dev guide for cython build
2019-03-05 14:07:22 -05:00
Minjie Wang
565f0c88fc
[WIP] [NN] Refactor NN package ( #406 )
...
* refactor graph conv
* docs & tests
* fix lint
* fix lint
* fix lint
* fix lint script
* fix lint
* Update
* Style fix
* Fix style
* Fix style
* Fix gpu case
* Fix for gpu case
* Hotfix edgesoftmax docs
* Handle repeated features
* Add docstring
* Set default arguments
* Remove dropout from nn.conv
* Fix
* add util fn for renaming
* revert gcn_spmv.py
* mx folder
* fix wierd bug
* fix mx
* fix lint
2019-02-25 18:41:21 -05:00
Minjie Wang
4bd4d6e348
[Lint] Pylint ( #330 )
...
* 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
2019-01-01 15:15:41 -05:00
Lingfan Yu
2664ed2dff
[Bugfix] Fix multiple send recv ( #320 )
...
* fix bug: frame append should check itself
* more test case
* fix multi-send-recv bug
* remv msg graph and clean up
* test cases
* more test case
* fix for batchedgraph
* fix bugs: converting from a graph with edges
* fix
* add more operators to utils.Index
* clear frame executor
* change message indicator to a graph level index
* fix test cases
* guard the case that mxnet does not support concat zero shape tensor
* fix bug: avoid convert full slice to numpy
* test multi-send-recv after conversion
* fix as request (partially)
* add dtype, ctx to full_1d
* add slice data to utils.Index
* fix
* more doc string
* fix as requested
2018-12-23 21:35:49 -05:00
Minjie Wang
f35ac5443e
[Graph][Model] Cache adj & inc; MX GCN ( #307 )
...
* add cache to adj and incmat
* Fix bug in cached adj/inc
* mx gcn spmv runnable; acc debugging...
* fix bug in mx gcn that loss is not correctly calculated
* fix mx utest
* fix as requested
* use raw parameter tensors rather than dense layer
* fix dropout
* Add numbers in readme
2018-12-16 22:51:01 -05:00
Minjie Wang
21255b6528
[Bugfix] tolist and dependencies in dgl.data ( #239 )
...
* change Index.tolist -> Index.tonumpy; fix bug in traversal; remove dependencies in data
* fix import
* fix __all__ and some docstring
2018-12-05 12:20:59 -05:00
Minjie Wang
eafcb7e7f5
[Bugfix][MXNet] Fix edge order and builtin max bug in mx ( #247 )
...
* Fix edge order and builtin max bug in mx
* fix as requested
2018-12-05 01:32:54 -08:00
Lingfan Yu
455ea48570
[Bugfix] Conversion between networkx and DGLGraph ( #244 )
...
* copy feature to networkx
* fix to_network for multi-graph
* test case for nx conversion
* iterate over Index returns plain int instead of numpy.int64
* fix from_network multi-edge bug
2018-12-04 16:19:11 -05:00
Minjie Wang
b1eeb93449
[Bugfix][Runtime] Zero degree behaviors ( #177 )
...
* fix recv nodes are all 0deg; fix hybriddict does not through keyerror properly
* fallback to apply_nodes when all nodes are 0deg; WIP on pull spmv 0deg
* new 0deg behavior
* new 0deg behavior
* update mx utest for pull-0deg
* fix mx
* fix mx
* get rid of unnecessary sort-n-unique
2018-11-25 22:33:08 -05:00
Lingfan Yu
deb653f8dc
[Runtime] Scheduler and Executor ( #140 )
...
* executor api
* draft executor interface
* WIP
* revert changes to avoid conflict with api change
* core scheduling logic
* WIP: build graph adj
* incidence matrix for in edges
* support incidence matrix for partial recv nodes
* improve
* build adjmat in scheduler
* graph store
* get degree bucketing schedule
* connect to c++ degree bucketing
* conceptual executor creation code
* executor comments
* fix
* more executor comments
* WIP: full send_and_recv schedule
* most schedulers
* simplify scheduler
* executors
* runtime
* builtin function base class
* adj indices and shape
* completely refactor scheduler
* rename and move bundled out to function.py
* use_edge_feature in msg func
* rewrite scheduler
* node edge executor
* connect with graph api
* handle zero degree
* misc
* fix test cases
* fix a good many bugs...
* remove old scheduler
* push and pull
* fix send recv
* c++ lint
* fix batched send recv
* hot fix for mxnet
* typo
* write back executor
* apply node edge
* clean up, doc string
* fix as requested
* refactor
* fix
* WIP
* WIP
* ir draft
* more on ir
* WIP: spmv schedule
* WIP
* recv schedule
* refactor
* WIP
* snr degree bucketing
* snr scheduler
* move prog to graph.py; rename
* unittest for send/recv
* remove some legacy codes
* WIP: update_all
* pass test_basics
* passed all current utests
* more utests; fix mx utest
* WIP: fixing zero deg initial value
* some tests
* fix 0deg problem
* fix mx
* fix mx
* some notes
* fix as requested
2018-11-22 12:15:50 -05:00
Gan Quan
79a510252b
Pickling support ( #155 )
...
* pickling support
* resorting to suggested way of pickling
* custom attribute pickling check
* working around a weird pytorch pickling bug
* including partial frame case
* pickling everything now
* fix as requested
2018-11-16 17:19:20 -05:00
Minjie Wang
048f6d7a30
[GraphIndex] refactor graph caching ( #150 )
...
* refactor graph caching
* fix mx test
* fix typo
2018-11-13 22:12:38 -05:00
Gan Quan
72efb42718
[Bugfix] fixes NLTK dependency ( #125 ) and #126 ( #131 )
2018-11-09 14:16:52 -05:00
Minjie Wang
7241a9c008
[Backend] backend interface ( #109 )
...
* backend interface
* small fix
* more comments to the data type dict
* WIP
* convert_to and narrow
* WIP
* pytorch and numpy backend; WIP on mxnet backend
* mxnet backend
* narrow
* Fix all usages
* fix for mx
* fix for mx
* fix mx
* fix mx
* fix mx
* fix mx
* fix mx
* fix mx
* fix mx
* revert jenkins
* add sparse_matrix api
* sparse matrix api
* some fixme
* Fix as requested
2018-11-04 21:42:39 -05:00
Minjie Wang
68ec624782
[API][Doc] API change & basic tutorials ( #113 )
...
* 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
2018-11-02 17:19:14 -04:00
Lingfan Yu
750e50372a
Efficient send_and_recv ( #83 )
...
* python side send_and_recv shortcut
* common util function for c apis
* degree bucketing scheduler
* scheduler c apis
* cmake
* python side logics
* minor
* fix multiple msg/red func cases
* remove shell echo command in Jenkinsfile...
* fuse apply for send_and_recv
* fuse update func for update_all
* typo...
* handle anonymous
* add degree bucketing for entire graph
* degree bucketing executor
* minor
* style
* rename graph_mapping to recv_nodes
* fix some comments
2018-10-17 11:14:52 -04:00
Minjie Wang
7603b8c351
Fix dlpack bug; zero copy between dgl.ndarray and user tensor enabled
2018-10-09 11:37:59 -04:00
Minjie Wang
b2e4bdc03f
passed basic test batching
2018-09-20 14:44:06 -04:00
Minjie Wang
a1038eb1ee
graph index
2018-09-19 21:02:15 -04:00
Minjie Wang
b24daa6607
change to rel import within dgl
2018-09-16 16:14:37 -04:00
Minjie Wang
61fa3c6cf5
Builtin function and API changes ( #53 )
...
* WIP: API renaming
* API rewrite and node function refactor
* builtin functions
* builtin functions tested
* fix test
* send and recv spmv test
* WIP: fix examples
* Fix examples using new APIs
2018-09-01 13:38:01 -04:00
Gan Quan
b7eb16595f
Fix 0deg update_to and Tree-LSTM model ( #51 )
...
* WIP
* WIP
* treelstm dataloader
* Main training loop.
* trainable treelstm script
* fix dependency
* cuda training
* Add tensorized topological traversal
* allowing update_to() with no incoming messages
* fixing partial cases
2018-08-28 11:57:08 -04:00
Gan Quan
5e75f5dbfc
Fix reducing with 0 incoming messages ( #48 )
...
* fixing 0 degree reduces
* adopting accum=None semantics
* minor fix as per reviews
* TODO in test
* fix test
2018-08-24 11:51:05 -04:00
Minjie Wang
6105e44142
Many fix and updates ( #47 )
...
* subgraph copy from
* WIP
* cached members
* Change all usage of id tensor to the new Index object; remove set device in DGLGraph;
* subgraph merge API tested
* add dict type reduced msg test
2018-08-22 12:25:05 -04:00
Minjie Wang
3721822e9e
Subgraph API ( #39 )
...
* 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
2018-08-18 14:14:43 -04:00
Minjie Wang
e3bac70b4f
Spmv partial ( #43 )
...
* partial spmv impl and test
* some fix for update edge
2018-08-12 21:02:55 -04:00
Minjie Wang
2c489fadec
SPMV specialization ( #32 )
...
* 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
2018-08-06 14:00:06 -04:00
Minjie Wang
11e42d1094
Batching semantics and naive frame storage ( #31 )
...
* batch message_func, reduce_func and update_func
Conflicts:
python/dgl/backend/pytorch.py
* test cases for batching
Conflicts:
python/dgl/graph.py
* resolve conflicts
* setter/getter
Conflicts:
python/dgl/graph.py
* test setter/getter
Conflicts:
python/dgl/graph.py
* merge DGLGraph and DGLBGraph
Conflicts:
python/dgl/graph.py
Conflicts:
python/dgl/graph.py
* batchability test
Conflicts:
python/dgl/graph.py
Conflicts:
python/dgl/graph.py
* New interface (draft)
Conflicts:
_reference/gat_mx.py
_reference/molecular-gcn.py
_reference/molecular-gcn_mx.py
_reference/multi-gcn.py
_reference/multi-gcn_mx.py
_reference/mx.py
python/dgl/graph.py
* Batch operations on graph
Conflicts:
.gitignore
python/dgl/backend/__init__.py
python/dgl/backend/numpy.py
python/dgl/graph.py
* sendto
* storage
* NodeDict
* DGLFrame/DGLArray
* scaffold code for graph.py
* clean up files; initial frame code
* basic frame tests using pytorch
* frame autograd test passed
* fix non-batched tests
* initial code for cached graph; tested
* batch sendto
* batch recv
* update routines
* update all
* anonymous repr batching
* specialize test
* igraph dep
* fix
* fix
* fix
* fix
* fix
* clean some files
* batch setter and getter
* fix utests
2018-07-30 14:10:37 -04:00
Minjie Wang
aa5bd89f09
minor change on the supported container type
2018-06-15 05:08:38 -04:00
Minjie Wang
15a2c22c98
Reorg folders; basic impl of the APIs
2018-06-14 21:37:43 -04:00