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
xiang song(charlie.song)
ffe5898317
[Optimization][KG] Several optimizations on DGL-KG ( #1233 )
...
* Several optimizations on DGL-KG:
1. Sorted positive edges for sampling which can reduce random
memory access during positive sampling
2. Asynchronous node embedding update
3. Balanced Relation Partition that gives balanced number of
edges in each partition. When there is no cross partition
relation, relation embedding can be pin into GPU memory
4. tunable neg_sample_size instead of fixed neg_sample_size
* Fix test
* Fix test and eval.py
* Now TransR is OK
* Fix single GPU with mix_cpu_gpu
* Add app tests
* Fix test script
* fix mxnet
* Fix sample
* Add docstrings
* Fix
* Default value for num_workers
* Upd
* upd
2020-02-09 13:01:00 -08:00
xiang song(charlie.song)
c49582c996
[Test] Fix the random seed in test_kernel.py and fix the _print_error ( #1194 )
...
* Fix the random seed and fix the _print_error
* Fix check_positive_edge_sampler sample weight.
Co-authored-by: Zihao Ye <zihaoye.cs@gmail.com >
Co-authored-by: VoVAllen <VoVAllen@users.noreply.github.com >
2020-01-17 13:48:47 +08:00
xiang song(charlie.song)
cd9599ab04
[KG][Optimization] Remove copy from parent in minibatch generation ( #1193 )
...
* remote copy from parent
* upd
* make test_sampler easier to pass
2020-01-10 15:59:09 -08:00
Da Zheng
1022d5d64d
[KG] PBG's way of constructing negative edges ( #1159 )
...
* attach positive.
* add neg_deg_sample.
* add comment.
* add neg_deg_sample for eval.
* change the edge sampler.
* rename edge sampler in KG.
* allow specifying chunk size and negative sample size separately.
* fix bugs in KG.
* add check in sampler.
* add more checks.
* fix
* add comment.
* add comments.
2020-01-04 19:25:06 -08:00
xiang song(charlie.song)
61b78e6ee7
[Bug Fix]edge sample hotfix ( #1152 )
...
* hot fix
* Fix docs
* Fix ArrayHeap float overflow bug
* Fix
* Clean some dead code
* Fix
* FIx
* Add some comments
* run test
2019-12-30 19:42:57 -08:00
xiang song(charlie.song)
913e324903
Add device check for sampler input ( #1145 )
...
current samplers only support working on CPU
2019-12-27 22:50:52 +08:00
xiang song(charlie.song)
41f8a162f4
[Feature Improvement]Edge Sampler w and w/o replacement ( #1116 )
...
* Add weight based edge sampler
* Can run, edge weight work.
TODO: test node weight
* Fix node weight sample
* Fix y
* Update doc
* Fix syntex
* Fix
* Fix GPU test for sampler
* Fix test
* Fix
* Refactor EdgeSampler to act as class object not function that it
can record its own private states.
* clean
* Fix
* Fix
* Fix run bug on kg app
* update
* update test
* test
* Simply python API and fix some C code
* Fix
* Fix
* Fix syntex
* Fix
* Update API description
* add replacement for edge sampler
* Now edge sampler support replacement and no-replacement
* Fix
* Fix
* change kg/app to use edge sampler with replacement config
* Update replacement algo
* Fix syntax
* Update
* Update
Co-authored-by: Da Zheng <zhengda1936@gmail.com >
2019-12-24 16:25:40 +08:00
VoVAllen
d30a69bf27
[Backend] TF backend ( #978 )
...
* tf
* add builtin support
* fiix
* pytest
* fix
* fix
* fix some bugs
* fix selecting
* fix todo
* fix test
* fix test fail in tf
* fix
* fix
* fix gather row
* fix gather row
* log backend
* fix gather row
* fix gather row
* fix for pytorch
* fix
* fix
* fix
* fix
* fix
* fix tests
* fix
* fix
* fix
* fix
* fix
* fix
* fix convert
* fix
* fix
* fix
* fix inplace
* add alignment setting
* add debug option
* Revert "add alignment setting"
This reverts commit ec63fb3506ea84fff7d447a1fbdfd1d5d1fb6110.
* tf ci
* fix lint
* fix lint
* add tfdlpack
* fix type
* add env
* fix backend
* fix
* fix tests
* remove one_hot
* remove comment
* remove comment
* fix
* use pip to install all
* fix test
* fix base
* fix
* fix
* add skip
* upgrade cmake
* change version
* change ci
* fix
* fix
* fix
* fix
* fix seg fault
* fix
* fix python version
* fix
* try fix
* fix
* fix
* tf takes longer time in ci
* change py version
* fix
* fix
* fix oom
* change kg env
* change kg env
* 啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊啊
* 我再也不搞各种乱七八糟环境了……
* use pytest
* Chang image
2019-12-20 15:56:51 +08:00
xiang song(charlie.song)
632a9af8f9
[Feature] No-Uniform Edge Sampler ( #1087 )
...
* Add weight based edge sampler
* Can run, edge weight work.
TODO: test node weight
* Fix node weight sample
* Fix y
* Update doc
* Fix syntex
* Fix
* Fix GPU test for sampler
* Fix test
* Fix
* Refactor EdgeSampler to act as class object not function that it
can record its own private states.
* clean
* Fix
* Fix
* Fix run bug on kg app
* update
* update test
* test
* Simply python API and fix some C code
* Fix
* Fix
* Fix syntex
* Fix
* Update API description
2019-12-16 11:26:34 -08:00
VoVAllen
dd65ee211e
[CI] Change tests for flexibility
...
* change ci image
* fix
* force bash
* fix
* fix python version
* fix
* fix
* fix
* update gpu
* cuda
* jenkins
* fix build sh
* fix
* Revert "fix"
This reverts commit 6b091914b3ef6b4300fa662ee375aa4b27944f5c.
* try fix
* fix
* Revert "fix"
This reverts commit e42c3035fa4974c6b197aaba0748f7b45113ddaa.
* try fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix tests
* try fix
* fix
* fix
* fix
* fix
* fix
* fix
* fix ctx problem
* fix many tests
* fix typo
* add backend
* move to pytorch folder
* fix?
* fix ci
* try skip
* try false
* try?
* try?
* Revert to 7d9a52f
* fix various
* fix lint
* Revert Jenkinsfile
* revert env
* revert env
* address comment
* remove file
2019-12-16 14:54:37 +08:00
Da Zheng
d0eae92e5a
[Test] reduce test. ( #895 )
...
* reduce test.
* increase timeout for unittest.
2019-10-02 00:20:39 -07:00
Da Zheng
3e454476b6
edge sampler return head nodes and tail nodes. ( #889 )
...
* edge sampler return head nodes and tail nodes.
* edge subgraph.
* use VecToIdArray
* example.
* fix compile error.
2019-09-30 21:25:16 -07:00
Da Zheng
1db697ec65
Improve edge sampler ( #881 )
...
* optimizer for sampling all negative edges.
* allow to disable checking false negative.
* fix lint.
* fix docstring.
* fix for comment.
* add comments.
2019-09-25 22:56:37 -07:00
Da Zheng
2d489617dd
[Feature] find the existence of negative edges. ( #875 )
...
* find the existence of negative edges.
* add comment.
* fix test.
2019-09-23 01:59:02 -07:00
Da Zheng
4297e6d6ff
[Feature] add PBG's negative edge sampling. ( #836 )
...
* PBG negative edge sampler.
* add a positive edge to make it regular, handle last batch.
* exclude all positive edges in the parent graph.
* just uniformly sample negative nodes.
* fix lint.
* shuffle one-side nodes of positive edges.
* just uniformly sample negative nodes.
* change the data type.
* address comment.
* remove commented code.
2019-09-11 12:52:06 -07:00
Da Zheng
66971c1aa4
[Feature] Add edge sampling for link prediction ( #780 )
...
* add edge sampler.
* add test and run.
* add negative sampling.
* remap the edge subgraph vid.
* negative graph excludes edges of positive edgs.
* remove print.
* avoid sampling NodeFlow when expand_factor or num_hops is 0.
* fix a bug when excluding nodes in negative graph.
* support multigraph.
* exclude positive edges.
* fix memory leak.
* return subgraph object directly.
* fix many problems.
* add comments.
* address comments
2019-08-21 23:05:24 -07:00
Quan (Andy) Gan
16061925d5
[NodeFlow] Non-uniform neighbor sampling ( #711 )
...
* nonuniform sampler
* unit test
* test on out neighbors
* error checks
* lint
* fix
* clarification
* use macro switcher
* use empty array for uniform sampling
* oops
* Revert "oops"
This reverts commit a11f9ae707aaeb67fb5921c887a17d3711d5b04a.
* Revert "use empty array for uniform sampling"
This reverts commit 8526ce4cade89f2c1b09a08aca8830375ebafb31.
* re-reverting
* use a method
2019-08-07 09:42:08 +08:00
Quan (Andy) Gan
e9e587b6cb
[Refactor] C random number generator ( #729 )
...
* 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
2019-07-31 17:54:30 +08:00
Da Zheng
5da57663cc
[BUGFIX] fix sampler. ( #616 )
...
* fix sampler.
* update doc.
* fix.
2019-06-06 20:47:59 -07: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
Quan (Andy) Gan
21ff161db6
fix occasional assertion fail ( #611 )
2019-06-06 18:23:49 +08:00
Quan (Andy) Gan
6066fee935
[Model][Feature] PinSage & Random Walk with Restart ( #453 )
...
* random walk traces generation
* remove outdated comments
* oops put in the wrong place
* explicit inline
* moving rand_r to util
* pinsage-like model on movielens
* the code runs now
* support cuda
* using readonly graph
* moving random walk to public function
* per-thread seed and openmp support
* pinsage-like model on movielens
* the code runs now
* support cuda
* using readonly graph
* using C random walk
* removing profile decorators
* param initialization
* no grad
* leaky relu fixes everything
* train and save
* WIP
* WIP
* WIP
* seems to work
* evaluation output
* swapping order of val/test and train
* debug
* hyperparam tuning
* prior/training dataset split changes
* random walk reorg
* random walk with restart
* signed comparison fix
* migrating random walk to nodeflow
* Revert "migrating random walk to nodeflow"
This reverts commit f2565347cced7c912a58a529b257c033d9f375b7.
* add README and remove dataset
* new endpoint
* lint
* lint x2
* oops forgot test
* including bpr - better for baseline
* addressing fixes
* throwing random walks out from SamplerOp class
* forgot to move RandomWalk; why did this even work?
* removing legacy garbage
* add todo
* address comments
* stupid bug fix
* call ndarrayvector converter to handle traces
2019-03-29 13:01:18 +08: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
GaiYu0
fb4246e564
[Feature]Uniform layer-wise sampler ( #416 )
...
* migrate to node-flow
* uniform layer sampler test cases
* more test cases
* documentations
* fix lint errors
* fix lint errors
* fix lint errors
* iota
* add asnumpy
* requested changes
* fix indptr error
* fix lint errors
* requested changes & fix lint errors
* fix lint errors
* fix LayerSampler unit test
2019-03-02 16:37:18 -08:00
Da Zheng
bea07b41b3
[Sampler] fix the API of neighbor sampler. ( #407 )
...
* don't return aux_info.
* fix sampler test.
* fix sse.
* fix.
* add comment.
2019-02-28 13:45:21 -08:00
Quan (Andy) Gan
2e1cbd5d68
[Feature] Random walk traces generation ( #392 )
...
* random walk traces generation
* remove outdated comments
* oops put in the wrong place
* explicit inline
* moving rand_r to util
* moving random walk to public function
* per-thread seed and openmp support
* type cast styles
2019-02-20 10:41:59 -05:00
Da Zheng
f370e628cd
[Feature] add NodeFlow API ( #361 )
...
* sample layer subgraphs.
* fix.
* fix.
* add layered subgraph.
* fix lint.
* fix.
* fix tutorial.
* fix.
* remove copy_to_parent.
* add num_layers
* move sampling code to sampler.cc
* fix.
* move subgraph construction out.
* Revert "move subgraph construction out."
This reverts commit 24b3d13b0d8ed5f91847ea75a7674ee8f7d45cff.
* change to NodeFlow.
* use NodeFlow in Python.
* use NodeFlowIndex.
* add node_mapping and edge_mapping.
* remove unnecessary code in SSE tutorial.
* Revert "remove unnecessary code in SSE tutorial."
This reverts commit 093f0413d5fa2e63ca5f80c46c80a126a9fb720c.
* fix tutorial.
* move to node_flow.
* update gcn cv updater.
* import NodeFlow.
* update.
* add demo code for vanilla control variate sampler.
* update.
* update.
* add neighbor sampling.
* return flow offsets.
* update node_flow.
* add test.
* fix sampler.
* fix graph index.
* fix a bug in sampler.
* fix map_to_layer_nid and map_to_flow_eid.
* fix apply_flow.
* remove model code.
* implement flow_compute.
* fix a bug.
* reverse the csr physically.
* add mini-batch test.
* add mini batch test.
* update flow_compute.
* add prop_flows
* run on specific nodes.
* test copy
* fix a bug in creating frame in NodeFlow.
* add init gcn_cv_updater.
* fix a minor bug.
* fix gcn_cv_updater.
* fix a bug.
* fix a bug in NodeFlow.
* use new h in gcn_cv_updater.
* add layer_in_degree and layer_out_degree.
* fix gcn_cv_updater for gpu.
* temp fix in NodeFlow for diff context.
* allow enabling/disabling copy back.
* add with-updater option.
* fix a bug in computing degree.
* add with-cv option.
* rename and add comments.
* fix lint complain.
* fix lint.
* avoid assert.
* remove assert.
* fix.
* fix.
* fix.
* fix.
* fix the methods in NodeFlow.
* fix lint.
* update SSE.
* remove gcn_cv_updater.
* correct comments for the schedulers.
* update comment.
* add map_to_nodeflow_nid
* address comment.
* remove duplicated test.
* fix int.
* fix comments.
* fix lint
* fix.
* replace subgraph with NodeFlow.
* move view.
* address comments.
* fix lint.
* fix lint.
* remove static_cast.
* fix docstring.
* fix comments.
* break SampleSubgraph.
* move neighbor sampling to sampler.cc
* fix comments.
* rename.
* split neighbor_list.
* address comments.
* fix.
* remove TODO.
2019-02-19 15:49:28 -08:00
Da Zheng
929742b588
[Feature] Reimplement Immutable graph index in DGL ( #342 )
...
* init.
* it's compiled.
* add immutable graph constructor.
* add immutable graph API.
* fix.
* impl get adjacency matrix.
* fix.
* fix graph_index from scipy matrix.
* add neighbor sampling.
* remap vertex ids.
* fix.
* move sampler test.
* fix tests.
* add comments
* remove mxnet-specific immutable graph.
* fix.
* fix lint.
* fix.
* try to fix windows compile error.
* fix.
* fix.
* add test.
* unify Graph and ImmutableGraph.
* fix bugs.
* fix compile.
* move immutable graph.
* fix.
* remove print.
* fix lint.
* fix
* fix lint.
* fix lint.
* fix test.
* fix comments.
* merge GraphIndex and ImmutableGraphIndex.
* temp fix.
* impl GetAdj.
* fix lint
* fix.
* fix.
* fix.
* fix.
* fix.
* use csr only for readonly graph.
* Revert "use csr only for readonly graph."
This reverts commit 8e24bb033af8504531b22849de5b7567b168e0d5.
* remove code.
* fix.
* fix.
* fix.
* fix.
* fix.
* fix.
* address comments.
* fix for comments.
* fix comments.
* revert.
* move test_graph_index to compute.
* fix.
* fix.
* impl GetAdj for coo.
* fix.
* fix tests.
* address comments.
* address comments.
* fix comment.
* address comments.
* use lambda.
* other comments.
* address comments.
* modify the semantics of edges.
* fix order.
* use DGLIdIter
* fix.
* remove NotImplemented.
* revert some code.
2019-01-17 09:59:53 +08:00