1. 09 Feb, 2020 1 commit
    • xiang song(charlie.song)'s avatar
      [Optimization][KG] Several optimizations on DGL-KG (#1233) · ffe58983
      xiang song(charlie.song) authored
      * 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
      ffe58983
  2. 17 Jan, 2020 1 commit
  3. 10 Jan, 2020 1 commit
  4. 05 Jan, 2020 1 commit
    • Da Zheng's avatar
      [KG] PBG's way of constructing negative edges (#1159) · 1022d5d6
      Da Zheng authored
      * 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.
      1022d5d6
  5. 31 Dec, 2019 1 commit
  6. 27 Dec, 2019 1 commit
  7. 24 Dec, 2019 1 commit
    • xiang song(charlie.song)'s avatar
      [Feature Improvement]Edge Sampler w and w/o replacement (#1116) · 41f8a162
      xiang song(charlie.song) authored
      
      
      * 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: default avatarDa Zheng <zhengda1936@gmail.com>
      41f8a162
  8. 20 Dec, 2019 1 commit
    • VoVAllen's avatar
      [Backend] TF backend (#978) · d30a69bf
      VoVAllen authored
      * 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
      d30a69bf
  9. 16 Dec, 2019 2 commits
    • xiang song(charlie.song)'s avatar
      [Feature] No-Uniform Edge Sampler (#1087) · 632a9af8
      xiang song(charlie.song) authored
      * 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
      632a9af8
    • VoVAllen's avatar
      [CI] Change tests for flexibility · dd65ee21
      VoVAllen authored
      * 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
      dd65ee21
  10. 02 Oct, 2019 1 commit
  11. 01 Oct, 2019 1 commit
  12. 26 Sep, 2019 1 commit
    • Da Zheng's avatar
      Improve edge sampler (#881) · 1db697ec
      Da Zheng authored
      * optimizer for sampling all negative edges.
      
      * allow to disable checking false negative.
      
      * fix lint.
      
      * fix docstring.
      
      * fix for comment.
      
      * add comments.
      1db697ec
  13. 23 Sep, 2019 1 commit
  14. 11 Sep, 2019 1 commit
    • Da Zheng's avatar
      [Feature] add PBG's negative edge sampling. (#836) · 4297e6d6
      Da Zheng authored
      * 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.
      4297e6d6
  15. 22 Aug, 2019 1 commit
    • Da Zheng's avatar
      [Feature] Add edge sampling for link prediction (#780) · 66971c1a
      Da Zheng authored
      * 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
      66971c1a
  16. 07 Aug, 2019 1 commit
    • Quan (Andy) Gan's avatar
      [NodeFlow] Non-uniform neighbor sampling (#711) · 16061925
      Quan (Andy) Gan authored
      * 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
      16061925
  17. 31 Jul, 2019 1 commit
    • Quan (Andy) Gan's avatar
      [Refactor] C random number generator (#729) · e9e587b6
      Quan (Andy) Gan authored
      * 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
      e9e587b6
  18. 07 Jun, 2019 1 commit
  19. 06 Jun, 2019 2 commits
    • Lingfan Yu's avatar
      [Feature][Kernel] DGL kernel support (#596) · 653428bd
      Lingfan Yu authored
      * [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
      653428bd
    • Quan (Andy) Gan's avatar
      fix occasional assertion fail (#611) · 21ff161d
      Quan (Andy) Gan authored
      21ff161d
  20. 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
  21. 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
  22. 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
  23. 28 Feb, 2019 1 commit
  24. 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
  25. 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
  26. 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
  27. 16 Dec, 2018 1 commit
  28. 05 Dec, 2018 1 commit
  29. 03 Dec, 2018 1 commit
  30. 14 Nov, 2018 1 commit
    • Da Zheng's avatar
      [API] Subgraph sampling API. (#138) · 2389df81
      Da Zheng authored
      * add neighbor sampler.
      
      * fix sampler.
      
      * handle non-existing nodes differently in MapParentIdToSubgraphId.
      
      * fix sampling tests.
      
      * parallelize sampling.
      
      * add more tests.
      
      * fix a bug in subgraph loader.
      
      * get number of sampled nodes directly.
      
      * load mxnet CSR to DGLGraph directly.
      
      * create graph from mxnet csr array directly.
      
      * use subgraph loader in SSE.
      
      * fix a bug in sampling.
      
      * output framework tensor.
      
      * fix.
      
      * remove unnecessary code.
      
      * fix tests.
      
      * add SSE README.
      
      * move to contrib.
      
      * address comments.
      
      * add tests.
      2389df81