1. 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
  2. 30 Nov, 2021 1 commit
  3. 17 Nov, 2021 1 commit
  4. 06 Nov, 2021 1 commit
  5. 04 Nov, 2021 1 commit
  6. 03 Nov, 2021 1 commit
  7. 18 Oct, 2021 1 commit
  8. 15 Oct, 2021 1 commit
  9. 17 Sep, 2021 1 commit
  10. 14 Sep, 2021 1 commit
  11. 13 Sep, 2021 2 commits
  12. 07 Sep, 2021 1 commit
  13. 06 Sep, 2021 1 commit
  14. 02 Sep, 2021 1 commit
  15. 01 Sep, 2021 1 commit
  16. 31 Aug, 2021 1 commit
  17. 24 Aug, 2021 1 commit
  18. 19 Aug, 2021 1 commit
  19. 18 Aug, 2021 1 commit
  20. 17 Aug, 2021 1 commit
  21. 02 Aug, 2021 1 commit
  22. 28 Jul, 2021 1 commit
    • xiang song(charlie.song)'s avatar
      [New Feature] Per edge type sampler for to_homogeneous graphs. (#3131) · ba7e7cf9
      xiang song(charlie.song) authored
      
      
      * fix.
      
      * fix.
      
      * fix.
      
      * fix.
      
      * Fix test
      
      * Deprecate old DistEmbedding impl, use synchronized embedding impl
      
      * Basic imple of heterogeneous on homogenenous sampling
      
      * make pass
      
      * Pass C++ test
      
      * Add python test code
      
      * lint
      
      * lint
      
      * Add MultiLayerEtypeNeighborSampler
      
      * Add unitest for single machine dataloader
      
      * Add dist dataloader test for edge type sampler
      
      * Fix lint
      
      * fix
      
      * support for per etype sample
      
      * Fix some bug and enable distributed training with per edge sample
      
      * fix
      
      * Now distributed training works
      
      * turn off some mxnet
      
      * turn off mxnet for some dist test
      
      * fix
      
      * upd
      
      * upd according to the comments
      
      * Fix
      
      * Fix test and now distributed works.
      
      * upd
      
      * upd
      
      * Fix
      
      * Fix bug
      
      * remove dead code.
      
      * upd
      
      * Fix
      
      * upd
      
      * Fix
      Co-authored-by: default avatarUbuntu <ubuntu@ip-172-31-71-112.ec2.internal>
      Co-authored-by: default avatarUbuntu <ubuntu@ip-172-31-2-66.ec2.internal>
      Co-authored-by: default avatarDa Zheng <zhengda1936@gmail.com>
      ba7e7cf9
  23. 21 Jul, 2021 1 commit
  24. 16 Jul, 2021 1 commit
  25. 13 Jul, 2021 1 commit
    • sanchit-misra's avatar
      [CPU][Kernel] Single socket spmm (#3024) · fac75e16
      sanchit-misra authored
      
      
      * optimizations of spmm for CPU
      
      * Added names of contributors
      
      * Minor code cleanup
      
      * Moved the spmm optimization code to a new header file
      
      * Moved to DGL's logging method
      
      * removed duplicate code between SpMMSumCsr and SpMMCmpCsr
      
      * Changes made to follow Google coding style
      
      * Fixed lint errors in spmm.h
      
      * Fixed some lint errors from spmm_blocking_libxsmm.h
      
      * Fixed lint errors from spmm_blocking_libxsmm.h
      
      * Added comments to SpMMCreateLibxsmmKernel
      
      * to enable building of tests, and other cosmetic changes
      
      * disabling libxsmm on windows
      
      * Put a condition to avoid opt impl for FP64 as libxsmm does not have FP64 support yet
      
      * cosmetic changes and documentation
      
      * cosmetic changes
      
      * to pass lint tests
      
      * replaced multiple allocations for buffers of indices and edges with a single allocation
      Co-authored-by: default avatarMinjie Wang <wmjlyjemaine@gmail.com>
      fac75e16
  26. 08 Jul, 2021 2 commits
  27. 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
  28. 23 Jun, 2021 1 commit
    • Qidong Su's avatar
      [Feature] Biased Neighbor Sampling (#2987) · e56bbafd
      Qidong Su authored
      
      
      * update
      
      * update
      
      * update
      
      * update
      
      * lint
      
      * lint
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * lint
      
      * update
      
      * clone
      
      * update
      
      * update
      
      * update
      
      * update
      
      * replace idarray with ndarray
      
      * refactor cpp part
      
      * refactor python part
      
      * debug
      
      * refactor interface
      
      * test and doc
      
      * lint and test
      
      * lint
      
      * fix
      
      * fix
      
      * fix
      
      * const
      
      * doc
      
      * fix
      
      * fix
      
      * fix
      
      * fix
      
      * fix & doc
      
      * fix
      
      * fix
      
      * update
      
      * update
      
      * update
      
      * merge
      
      * doc
      
      * doc
      
      * lint
      
      * fix
      
      * more tests
      
      * doc
      
      * fix
      
      * fix
      
      * update
      
      * update
      
      * update
      
      * fix
      
      * fix
      Co-authored-by: default avatarMinjie Wang <wmjlyjemaine@gmail.com>
      e56bbafd
  29. 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
  30. 10 Jun, 2021 1 commit
  31. 03 Jun, 2021 1 commit
  32. 01 Jun, 2021 1 commit
    • Qidong Su's avatar
      [Feature][Sampler] Sort CSR by tag (#1664) · b8fe2b48
      Qidong Su authored
      
      
      * update
      
      * update
      
      * update
      
      * update
      
      * lint
      
      * lint
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * update
      
      * lint
      
      * update
      
      * clone
      
      * update
      
      * update
      
      * update
      
      * update
      
      * replace idarray with ndarray
      
      * refactor cpp part
      
      * refactor python part
      
      * debug
      
      * refactor interface
      
      * test and doc
      
      * lint and test
      
      * lint
      
      * fix
      
      * fix
      
      * fix
      
      * const
      
      * doc
      
      * fix
      
      * fix
      
      * fix
      
      * fix
      
      * fix & doc
      
      * fix
      
      * fix
      
      * fix
      
      * fix
      
      * fix
      
      * fix
      
      * update
      Co-authored-by: default avatarMinjie Wang <wmjlyjemaine@gmail.com>
      b8fe2b48
  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. 16 Apr, 2021 1 commit
    • nv-dlasalle's avatar
      [Performance] Track sorted status of COO from creation (#2645) · bbebde46
      nv-dlasalle authored
      
      
      * Add row/col sorted flags
      
      * improve sorting paths
      
      * Remove print statement
      
      * Keep track of sorted matrices
      
      * Remove sort check in to_block
      
      * Improve CPU sorted COO->CSR
      
      * Handle the zero edge case
      
      * Remove omp default clause to work with MSVC
      
      * Update comments on sorted COO->CSR cpu implementatoin
      
      * Expose sorted to python interface
      
      * Make check_sorted default to false for dgl.graph()
      
      * remove check sorted; add utests
      
      * remove check_sorted flag
      Co-authored-by: default avatarMinjie Wang <wmjlyjemaine@gmail.com>
      bbebde46
  38. 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