1. 16 May, 2022 1 commit
  2. 26 Apr, 2022 1 commit
  3. 10 Mar, 2022 1 commit
  4. 28 Feb, 2022 1 commit
  5. 23 Feb, 2022 1 commit
    • Minjie Wang's avatar
      [NN] Rework RelGraphConv and HGTConv (#3742) · 0227ddfb
      Minjie Wang authored
      * WIP: TypedLinear and new RelGraphConv
      
      * wip
      
      * further simplify RGCN
      
      * a bunch of tweak for performance; add basic cpu support
      
      * update on segmm
      
      * wip: segment.cu
      
      * new backward kernel works
      
      * fix a bunch of bugs in kernel; leave idx_a for future
      
      * add nn test for typed_linear
      
      * rgcn nn test
      
      * bugfix in corner case; update RGCN README
      
      * doc
      
      * fix cpp lint
      
      * fix lint
      
      * fix ut
      
      * wip: hgtconv; presorted flag for rgcn
      
      * hgt code and ut; WIP: some fix on reorder graph
      
      * better typed linear init
      
      * fix ut
      
      * fix lint; add docstring
      0227ddfb
  6. 21 Feb, 2022 1 commit
    • Quan (Andy) Gan's avatar
      [Bugfix] Bug fixes in new dataloader (#3727) · 3f138eba
      Quan (Andy) Gan authored
      
      
      * fixes
      
      * fix
      
      * more fixes
      
      * update
      
      * oops
      
      * lint?
      
      * temporarily revert - will fix in another PR
      
      * more fixes
      
      * skipping mxnet test
      
      * address comments
      
      * fix DDP
      
      * fix edge dataloader exclusion problems
      
      * stupid bug
      
      * fix
      
      * use_uvm option
      
      * fix
      
      * fixes
      
      * fixes
      
      * fixes
      
      * fixes
      
      * add evaluation for cluster gcn and ddp
      
      * stupid bug again
      
      * fixes
      
      * move sanity checks to only support DGLGraphs
      
      * pytorch lightning compatibility fixes
      
      * remove
      
      * poke
      
      * more fixes
      
      * fix
      
      * fix
      
      * disable test
      
      * docstrings
      
      * why is it getting a memory leak?
      
      * fix
      
      * update
      
      * updates and temporarily disable forkingpickler
      
      * update
      
      * fix?
      
      * fix?
      
      * oops
      
      * oops
      
      * fix
      
      * lint
      
      * huh
      
      * uh
      
      * update
      
      * fix
      
      * made it memory efficient
      
      * refine exclude interface
      
      * fix tutorial
      
      * fix tutorial
      
      * fix graph duplication in CPU dataloader workers
      
      * lint
      
      * lint
      
      * Revert "lint"
      
      This reverts commit 805484dd553695111b5fb37f2125214a6b7276e9.
      
      * Revert "lint"
      
      This reverts commit 0bce411b2b415c2ab770343949404498436dc8b2.
      
      * Revert "fix graph duplication in CPU dataloader workers"
      
      This reverts commit 9e3a8cf34c175d3093c773f6bb023b155f2bd27f.
      Co-authored-by: default avatarxiny <xiny@nvidia.com>
      Co-authored-by: default avatarJinjing Zhou <VoVAllen@users.noreply.github.com>
      3f138eba
  7. 18 Feb, 2022 1 commit
  8. 15 Feb, 2022 1 commit
    • Israt Nisa's avatar
      [Feature] Gather mm (#3641) · b3d3a2c4
      Israt Nisa authored
      
      
      * init
      
      * init
      
      * working cublasGemm
      
      * benchmark high-mem/low-mem, err gather_mm output
      
      * cuda kernel for bmm like kernel
      
      * removed cpu copy for E_per_Rel
      
      * benchmark code from Minjie
      
      * fixed cublas results in gathermm sorted
      
      * use GPU shared mem in unsorted gather mm
      
      * minor
      
      * Added an optimal version of gather_mm_unsorted
      
      * lint
      
      * init gather_mm_scatter
      
      * cublas transpose added
      
      * fixed h_offset for multiple rel
      
      * backward unittest
      
      * cublas support to transpose W
      
      * adding missed file
      
      * forgot to add header file
      
      * lint
      
      * lint
      
      * cleanup
      
      * lint
      
      * docstring
      
      * lint
      
      * added unittest
      
      * lint
      
      * lint
      
      * unittest
      
      * changed err type
      
      * skip cpu test
      
      * skip CPU code
      
      * move in-len loop inside
      
      * lint
      
      * added check different dim length for B
      
      * w_per_len is optional now
      
      * moved gather_mm to pytorch/backend with backward support
      
      * removed a_/b_trans support
      
      * transpose op inside GEMM call
      
      * removed out alloc from API, changed W 2D to 3D
      
      * Added se_gather_mm, Separate API for sortedE
      
      * Fixed gather_mm (unsorted) user interface
      
      * unsorted gmm backward + separate CAPI for un/sorted A
      
      * typecast to float to support atomicAdd
      
      * lint typecast
      
      * lint
      
      * added gather_mm_scatter
      
      * minor
      
      * const
      
      * design changes
      
      * Added idx_a, idx_b support gmm_scatter
      
      * dgl doc
      
      * lint
      
      * adding gather_mm in ops
      
      * lint
      
      * lint
      
      * minor
      
      * removed benchmark files
      
      * minor
      
      * empty commit
      Co-authored-by: default avatarIsrat Nisa <nisisrat@amazon.com>
      b3d3a2c4
  9. 09 Feb, 2022 1 commit
    • Xin Yao's avatar
      [Feature] CUDA UVA sampling for MultiLayerNeighborSampler (#3674) · 738e8318
      Xin Yao authored
      
      
      * implement pin_memory/unpin_memory/is_pinned for dgl.graph
      
      * update python docstring
      
      * update c++ docstring
      
      * add test
      
      * fix the broken UnifiedTensor
      
      * XPU_SWITCH for kDLCPUPinned
      
      * a rough version ready for testing
      
      * eliminate extra context parameter for pin/unpin
      
      * update train_sampling
      
      * fix linting
      
      * fix typo
      
      * multi-gpu uva sampling case
      
      * disable new format materialization for pinned graphs
      
      * update python doc for pin_memory_
      
      * fix unit test
      
      * UVA sampling for link prediction
      
      * dispatch most csr ops
      
      * update graphsage example to combine uva sampling and UnifiedTensor
      
      * update graphsage example to combine uva sampling and UnifiedTensor
      
      * update graphsage example to combine uva sampling and UnifiedTensor
      
      * update doc
      
      * update examples
      
      * change unitgraph and heterograph's PinMemory to in-place
      
      * update examples for multi-gpu uva sampling
      
      * update doc
      
      * fix linting
      
      * fix cpu build
      
      * fix is_pinned for DistGraph
      
      * fix is_pinned for DistGraph
      
      * update graphsage unsupervised example
      
      * update doc for gpu sampling
      
      * update some check for sampling device switching
      
      * fix linting
      
      * adapt for new dataloader
      
      * fix linting
      
      * fix
      
      * fix some name issue
      
      * adjust device check
      
      * add unit test for uva sampling & fix some zero_copy bug
      
      * fix linting
      
      * update num_threads in graphsage examples
      Co-authored-by: default avatarQuan (Andy) Gan <coin2028@hotmail.com>
      Co-authored-by: default avatarJinjing Zhou <VoVAllen@users.noreply.github.com>
      738e8318
  10. 21 Jan, 2022 1 commit
    • Xin Yao's avatar
      [Feature] Pin dgl.graph to the page-locked memory (#3616) · 40b44a43
      Xin Yao authored
      
      
      * implement pin_memory/unpin_memory/is_pinned for dgl.graph
      
      * update python docstring
      
      * update c++ docstring
      
      * add test
      
      * fix the broken UnifiedTensor
      
      * eliminate extra context parameter for pin/unpin
      
      * fix linting
      
      * fix typo
      
      * disable new format materialization for pinned graphs
      
      * update python doc for pin_memory_
      
      * fix unit test
      
      * update doc
      
      * change unitgraph and heterograph's PinMemory to in-place
      
      * update comments for NDArray's PinMemory_ and PinData
      
      * update doc
      Co-authored-by: default avatarJinjing Zhou <VoVAllen@users.noreply.github.com>
      40b44a43
  11. 17 Jan, 2022 2 commits
  12. 10 Jan, 2022 1 commit
  13. 07 Jan, 2022 1 commit
    • Quan (Andy) Gan's avatar
      [Feature] Negative sampling (#3599) · 90f10b31
      Quan (Andy) Gan authored
      * first commit
      
      * a bunch of fixes
      
      * add unique
      
      * lint
      
      * lint
      
      * lint
      
      * address comments
      
      * Update negative_sampler.py
      
      * fix
      
      * description
      
      * address comments and fix
      
      * fix
      
      * replace unique with replace
      
      * test pylint
      
      * Update negative_sampler.py
      90f10b31
  14. 16 Dec, 2021 1 commit
  15. 03 Dec, 2021 1 commit
    • Israt Nisa's avatar
      [Feature] Add Min/max reducer in heterogeneous API for unary message functions (#3514) · cb0e1103
      Israt Nisa authored
      
      
      * min/max support for forward CPU heterograph
      
      * Added etype with each argU values
      
      * scatter_add needs fix
      
      * added scatter_add_hetero. Grads dont match for max reducer
      
      * storing ntype in argX
      
      * fixing scatter_add_hetero
      
      * hetero matches with torch's scatter add
      
      * works copy_e forward+cpu
      
      * added backward for copy_rhs
      
      * Computes gradient for all node types in one kernel
      
      * bug fix
      
      * unnitest for max/min on CPU
      
      * renamed scatter_add_hetero to update_grad_minmax_hetero
      
      * lint check and comment out cuda call for max. Code is for CPU only
      
      * lint check
      
      * replace inf with zero
      
      * minor
      
      * lint check
      
      * removed LIBXSMM code from hetro code
      
      * fixing backward operator of UpdateGradMinMaxHetero
      
      * removed backward from update_grad_minmax_hetero
      
      * docstring
      
      * improved docstring and coding style
      
      * Added pass by pointer for output
      
      * typos and pass by references
      
      * Support for copy_rhs
      
      * Added header <string>
      
      * fix bug in copy_u_max
      
      * Added comments and dimension check of all etypes
      
      * skip mxnet check
      
      * pass by pointer output arrays
      
      * updated docstring
      Co-authored-by: default avatarIsrat Nisa <nisisrat@amazon.com>
      Co-authored-by: default avatarQuan (Andy) Gan <coin2028@hotmail.com>
      cb0e1103
  16. 30 Nov, 2021 1 commit
  17. 17 Nov, 2021 1 commit
  18. 06 Nov, 2021 1 commit
  19. 04 Nov, 2021 1 commit
  20. 03 Nov, 2021 1 commit
  21. 15 Oct, 2021 1 commit
  22. 07 Sep, 2021 1 commit
  23. 06 Sep, 2021 1 commit
  24. 24 Aug, 2021 1 commit
  25. 19 Aug, 2021 1 commit
  26. 18 Aug, 2021 1 commit
  27. 17 Aug, 2021 1 commit
  28. 02 Aug, 2021 1 commit
  29. 16 Jul, 2021 1 commit
  30. 08 Jul, 2021 2 commits
  31. 06 Jul, 2021 1 commit
    • Israt Nisa's avatar
      [Feature] Add Heterograph support on Python for builtin unary msg functions... · 188152b8
      Israt Nisa authored
      
      [Feature] Add Heterograph support on Python for builtin unary msg functions (copy_u, copy_e) (#2989)
      
      * heterograph for binary func
      
      * Added SDDMM support
      
      * Added unittest
      
      * added binary test cases
      
      * unary mfuncs works
      
      * Fixed lint err
      
      * lint check and others
      
      * link check
      
      * fixed import *_hetero issue
      
      * lint check
      
      * replace torch with dgl backend
      
      * lint cehck
      
      * removed torch from test
      
      * skip mxnet unittest
      
      * skip gpu test
      
      * Remove unused/duplicated code
      
      * minor
      
      * changed data structure of ndata and edata
      
      * link check
      
      * reorganized
      
      * minor lint
      
      * minor lint
      
      * raise error for udf func
      
      * lint check
      
      * fix for CUDA 10.1
      
      * add a note for future cross-type max/min reducing
      
      * Add support CUDA < 11
      
      * lint check
      
      * tidied C code
      
      * remove dummy GSDDMM_hetero backward implementation
      Co-authored-by: default avatarIsrat Nisa <nisisrat@amazon.com>
      Co-authored-by: default avatarMinjie Wang <wmjlyjemaine@gmail.com>
      Co-authored-by: default avatarQuan Gan <coin2028@hotmail.com>
      188152b8
  32. 22 Jun, 2021 1 commit
    • Israt Nisa's avatar
      [Kernel] Add heterograph support in CUDA kernels (SpMM, SDDMM) (#2925) · 1113f674
      Israt Nisa authored
      
      
      * Added heterograph support SpMM, SDDMM
      
      * bug fix cuda stream
      
      * add cudaStrm destroy and fix whitespace
      
      * Added heterograph support SpMM, SDDMM
      
      * bug fix cuda stream
      
      * add cudaStrm destroy and fix whitespace
      
      * changed max stream = 1
      
      * Fixed ctx
      
      * using default stream
      
      * Added heterograph support SpMM, SDDMM
      
      * bug fix cuda stream
      
      * add cudaStrm destroy and fix whitespace
      
      * changed max stream = 1
      
      * Fixed ctx
      
      * using default stream
      
      * fix bug in copy_rhs
      
      * changed by mistake
      
      * minor datatype change
      
      * added datatype check
      Co-authored-by: default avatarIsrat Nisa <nisisrat@amazon.com>
      1113f674
  33. 20 May, 2021 1 commit
    • nv-dlasalle's avatar
      [Feature][Performance] Implement NCCL wrapper for communicating NodeEmbeddings... · ae8dbe6d
      nv-dlasalle authored
      
      [Feature][Performance] Implement NCCL wrapper for communicating NodeEmbeddings and sparse gradients. (#2825)
      
      * Split NCCL wrapper from sparse optimizer and sparse embedding
      
      * Add more unit tests for single node nccl
      
      * Fix unit test for tf
      
      * Switch to device histogram
      
      * Fix histgram issues
      
      * Finish migration to histogram
      
      * Handle cases with zero send/recieve data
      
      * Start on partition object
      
      * Get compiling
      
      * Updates
      
      * Add unit tests
      
      * Switch to partition object
      
      * Fix linting issues
      
      * Rename partition file
      
      * Add python doc
      
      * Fix python assert and finish doxygen comments
      
      * Remove stubs for range based partition to satisfy pylint
      
      * Wrap unit test in GPU only
      
      * Wrap explicit cuda call in ifdef
      
      * Merge with partition.py
      
      * update docstrings
      
      * Cleanup partition_op
      
      * Add Workspace object
      
      * Switch to using workspace object
      
      * Move last remainder based function out of nccl_api
      
      * Add error messages
      
      * Update docs with examples
      
      * Fix linting erros
      Co-authored-by: default avatarxiang song(charlie.song) <classicxsong@gmail.com>
      ae8dbe6d
  34. 17 May, 2021 1 commit
  35. 28 Apr, 2021 1 commit
  36. 27 Apr, 2021 1 commit
  37. 15 Apr, 2021 1 commit
    • nv-dlasalle's avatar
      [Performance][GPU] Enable GPU uniform edge sampling (#2716) · e70138bb
      nv-dlasalle authored
      
      
      * Start on uniform GPU sampling
      
      * Save more work
      
      * Get cu file compiling
      
      * Update sampling
      
      * More changes
      
      * Get GPU sampling for uniform probabilities solved
      
      * Fix batch tensor migration
      
      * Fix
      
      * update kernels
      
      * expand blocking
      
      * Undo testing change
      
      * Cut down on sampling overhead
      
      * Fix replacement
      
      * Update unit tests
      
      * Add option to gpu sample in graphsage
      
      * Copy only csc to gpu
      
      * Add ogbn support
      
      * Fix linting
      
      * Remove nvtx from sample
      
      * Improve documentation and error checking
      
      * Expand documentation
      
      * Update assert checking
      
      * delete extra space
      
      * Use standard dataloader when dataset is a dictionary
      
      * ogb -> ogbn
      
      * Fix edge selection determinism
      
      * Fix typos
      
      * Remove nvtx
      
      * Add comment for self.fanout_arrays and assert
      
      * Fix linting
      
      * Migrate to scalarbatcher
      
      * Fix indentation
      
      * Fix batcher
      
      * Fix indexing
      
      * Only use databatcher for GPU
      
      * Convert to DGL NDArray to PyTorch Tensor
      
      * Add optimization for PyTorch's F.tensor() for list of GPU tensors
      Co-authored-by: default avatarDa Zheng <zhengda1936@gmail.com>
      e70138bb
  38. 25 Mar, 2021 1 commit