1. 08 Apr, 2019 1 commit
    • Da Zheng's avatar
      [Feature] Create shared memory graph store. (#468) · bfdd1eaa
      Da Zheng authored
      * accelerate gcn_ns.
      
      * add timing.
      
      * run infer with whole graph.
      
      * distributed gcn_ns.
      
      * reconstruct gcn_ns.
      
      * minor fix.
      
      * change graphsage_cv for numa.
      
      * fix #OMP threads.
      
      * accelerate graphsage_cv.
      
      * fix a weird bug.
      
      * add profiler in graphsage_cv.
      
      * accelerate graphsage_cv.
      
      manually aggregate neighbors' embeddings with pull.
      
      * load csr directly in gcn_ns_sc.
      
      * parallel sort for graph index.
      
      * Revert "parallel sort for graph index."
      
      This reverts commit 86fe2c7117fe5e56b0d481b39849c258b166945b.
      
      * run gcn_ns_sc on GPUs.
      
      * acc gcn_cv_sc.
      
      * change gcn_cv for numa.
      
      * fix gcn_cv to use numa and gpu.
      
      * improve graphsage_cv to use numa and gpu.
      
      * improve gcn_ns.
      
      * improve graphsage_cv.
      
      * init shared memory graph store.
      
      * fix.
      
      * enable init ndata.
      
      * improve tests.
      
      * add bidirectional communication.
      
      * link to rt.
      
      * fix compilation error.
      
      * fix shared memory init.
      
      * use MessageQueue for inter-process communication.
      
      * reconstruct immutable graph csr.
      
      * fix gcn.
      
      * load csr to shared memory.
      
      * fix minor bugs.
      
      * add comments.
      
      * refactor SharedMemory.
      
      * fix bugs in ImmutableGraph.
      
      * create CSR graph from shared memory.
      
      * add more test for loading a csr graph.
      
      * terminate graph store properly.
      
      * allow initializing ndata in the graph store server.
      
      * use RPC for inter-process communication.
      
      * a script for loading a graph.
      
      * allow customizing port.
      
      * list all ndata and edata.
      
      * support dtype.
      
      * reorganize SharedMemoryGraphStore.
      
      * fix ndata shape.
      
      * reconstruct gcn_ns.
      
      * print info.
      
      * set omp in gcn_ns.
      
      * reset sampling examples.
      
      * fix lint.
      
      * fix lint.
      
      * reset gcn.
      
      * disable shared memory in windows.
      
      * fix.
      
      * fix.
      
      * reset changes.
      
      * revert nodeflow changes.
      
      * fix cmake.
      
      * fix test.
      
      * fix test.
      
      * fix test.
      
      * fix test.
      
      * add comments.
      
      * fix test.
      
      * move vector out.
      
      * fix lint.
      
      * fix lint.
      
      * move SharedMemory.
      
      * update cmake.
      
      * update comment.
      
      * fix comments.
      
      * Revert "update cmake."
      
      This reverts commit 592445e37077f70a6e3f2e5245f9a3d086b04f3b.
      
      * update cmake.
      
      * add comments.
      
      * rename.
      
      * change the comment.
      
      * fix a bug.
      
      * rename.
      
      * add comments.
      
      * add comments.
      
      * add init_edata.
      
      * rewrite memory alloc.
      
      * move vector to CSR.
      
      * fix.
      
      * init data.
      
      * Revert "init data."
      
      This reverts commit 2b217b9553911b7dd84a9f1d9b68430b5aa18e23.
      
      * init data.
      
      * init new columns correctly.
      bfdd1eaa
  2. 29 Mar, 2019 1 commit
    • Quan (Andy) Gan's avatar
      [Model][Feature] PinSage & Random Walk with Restart (#453) · 6066fee9
      Quan (Andy) Gan authored
      * 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
      6066fee9
  3. 07 Mar, 2019 1 commit
    • Da Zheng's avatar
      [Perf] Accelerate block_compute when all nodes are invoked. (#434) · 8651be54
      Da Zheng authored
      * refactor.
      
      * accelerate update_all in nodeflow.
      
      * fix.
      
      * refactor.
      
      * fix lint.
      
      * fix lint.
      
      * reorganize.
      
      * reorg.
      
      * remove.
      
      * add doc.
      
      * impl block_incidence_matrix
      
      * fix lint.
      
      * fix.
      
      * simple fix.
      
      * fix test.
      
      * fix interface.
      
      * fix eid.
      
      * fix comments.
      8651be54
  4. 05 Mar, 2019 1 commit
    • Minjie Wang's avatar
      [Refactor] Nodeflow, sampling, CAPI (#430) · ca2a7e1c
      Minjie Wang authored
      * 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
      ca2a7e1c
  5. 03 Mar, 2019 1 commit
    • GaiYu0's avatar
      [Feature]Uniform layer-wise sampler (#416) · fb4246e5
      GaiYu0 authored
      * 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
      fb4246e5
  6. 28 Feb, 2019 1 commit
    • Ziyue Huang's avatar
      [Model][MXNet] neighbor sampling & skip connection & control variate & graphsage (#322) · 7e30382e
      Ziyue Huang authored
      * neighbor sampling draft
      
      * val/test acc
      
      * control variate draft
      
      * control variate
      
      * update
      
      * fix new_history
      
      * maintain aggregated history while updating new history
      
      * preprocess the first layer, change push to pull
      
      * update
      
      * fix subg_degree
      
      * nodeflow
      
      * clear
      
      * readme
      
      * doc and unittest for self loop
      
      * address comments
      
      * rename
      
      * update
      
      * fix
      
      * Update node_flow.py
      
      * Update node_flow.py
      7e30382e
  7. 20 Feb, 2019 1 commit
    • Quan (Andy) Gan's avatar
      [Feature] Random walk traces generation (#392) · 2e1cbd5d
      Quan (Andy) Gan authored
      * 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
      2e1cbd5d
  8. 19 Feb, 2019 1 commit
    • Da Zheng's avatar
      [Feature] add NodeFlow API (#361) · f370e628
      Da Zheng authored
      * 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.
      f370e628
  9. 24 Jan, 2019 1 commit
  10. 21 Jan, 2019 1 commit
  11. 17 Jan, 2019 1 commit
    • Da Zheng's avatar
      [Feature] Reimplement Immutable graph index in DGL (#342) · 929742b5
      Da Zheng authored
      * 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.
      929742b5
  12. 05 Dec, 2018 1 commit
    • Lingfan Yu's avatar
      [Refactor] Rename before release (#261) · a1d50f0f
      Lingfan Yu authored
      * include/dgl/runtime
      
      * include
      
      * src/runtime
      
      * src/graph
      
      * src/scheduler
      
      * src
      
      * clean up CMakeLists
      
      * further clean up in cmake
      
      * install commands
      
      * python/dgl/_ffi/_cython
      
      * python/dgl/_ffi/_ctypes
      
      * python/dgl/_ffi
      
      * python/dgl
      
      * some fix
      
      * copy right
      a1d50f0f
  13. 09 Nov, 2018 1 commit
  14. 08 Nov, 2018 1 commit
    • GaiYu0's avatar
      [API] Graph traversal (#103) · 23191674
      GaiYu0 authored
      * bfs, dfs and topological traversal
      
      * dfs and test cases
      
      * Conflicts:
      	python/dgl/graph.py
      	src/graph/graph.cc
      	src/graph/graph_op.cc
      
      * documentation
      
      * requested changes
      
      * Conflicts:
      	Jenkinsfile
      	examples/pytorch/gcn/gcn.py
      	examples/pytorch/gcn/gcn_spmv.py
      	python/dgl/graph.py
      	python/dgl/graph_index.py
      	src/graph/graph.cc
      	src/graph/graph_op.cc
      
      * Conflicts:
      	Jenkinsfile
      	python/dgl/graph_index.py
      
      * fix lint errors
      
      * fix lint errors
      
      * fix lint errors
      
      * fix test cases
      
      * requested changes
      
      * traversal interface
      
      * [Bug] fixed a typo that caused syntax error (#120)
      
      * WIP
      
      * bfs nodes generator works
      
      * topological traversal
      
      * WIP: dfs_edges
      
      * dfs edges
      
      * dfs labeled edges
      
      * utest for traversal
      
      * fix lint
      
      * fix utest
      
      * code clean
      
      * changes as requested
      23191674
  15. 26 Oct, 2018 1 commit
    • Da Zheng's avatar
      [GraphIndex] Immutable graph index using MXNet CSRArray (#86) · 9e9a9488
      Da Zheng authored
      * add immutable graph index.
      
      * update ImmutableGraphIndex.
      
      * add benchmarks of subgraph generation.
      
      * fix node_subgraphs.
      
      * use scipy synthetic data in immutable graph.
      
      * create immutable_graph.
      
      * use spmv in gcn.
      
      * fix immutable graph index.
      
      * update graph index.
      
      * create ImmutableSubgraphIndex.
      
      * return subgraph node and edge mapping.
      
      * fix benchmark.
      
      * add mapping to subgraph nid.
      
      * test in_edges and out_edges.
      
      * update benchmark.
      
      * Fix immutable subgraph.
      
      * complete in_edges and out_edges.
      
      * fix benchmarks.
      
      * add test on node_subgraphs
      
      * add sse.
      
      * construct subgraphs in parallel.
      
      * add in/out degree(s).
      
      * make immutable graph index backend-specific.
      
      * implement has_edge(s) and edge_id(s).
      
      * Revert "use spmv in gcn."
      
      This reverts commit 9cfed5f5fb3dd2ed9b98745348b1c0e9731ed7f7.
      
      * implement node_subgraphs in GraphIndex.
      
      * fix sse.
      
      * address comments.
      
      * address comments.
      
      * Update mxnet docker.
      9e9a9488
  16. 19 Oct, 2018 1 commit
  17. 18 Oct, 2018 1 commit
    • Gan Quan's avatar
      [GRAPHINDEX] Multigraph support (#79) · bc3f852d
      Gan Quan authored
      * multigraph support on graph index
      
      * more tests
      
      * multigraph flag, bugfix on clear & copy
      
      * networkx interfaces
      
      * including graph index tests in Jenkins
      
      * node subgraph test
      
      * edge subgraphs
      
      * removing duplicates in pred/succ
      
      * more explicit test and doc
      
      * query source and destination from edge id
      
      * subgraphindex
      
      * renaming has_edge to has_edge_between, apply_edges adding eid
      
      * send_on and send_and_recv_on
      
      * DGLGraph edge subgraph
      
      * merged send_on and send_and_recv_on
      
      * change request
      
      * removing hashmap
      
      * creating multigraph by flag; mingw support
      
      * changes per request
      
      * reverting networkx auto multigraph discovery
      
      * notes on send/send_and_recv on multigraphs
      
      * changing test reducer from sum to max
      
      * added a fixme note in spmv scheduler
      bc3f852d
  18. 17 Oct, 2018 1 commit
    • Lingfan Yu's avatar
      Efficient send_and_recv (#83) · 750e5037
      Lingfan Yu authored
      * 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
      750e5037
  19. 07 Oct, 2018 1 commit
  20. 03 Oct, 2018 1 commit
  21. 24 Sep, 2018 1 commit
  22. 21 Sep, 2018 1 commit
  23. 20 Sep, 2018 1 commit
  24. 19 Sep, 2018 2 commits
  25. 17 Sep, 2018 1 commit
  26. 16 Sep, 2018 1 commit