文件历史

223 次代码提交

作者 SHA1 备注 提交日期
Muhammed Fatih BALIN 7de2e51b5e [CUDA] Remove unused headers for CCCL 2.4 compat (#7329) 2024-04-20 13:34:28 +08:00
Triston a4e19691d5 [Determinism] Enable environment var to use cusparse spmm deterministic algorithm (#7310)
Co-authored-by: Hongzhi (Steve), Chen <chenhongzhi.nkcs@gmail.com>
2024-04-19 09:00:40 +08:00
Muhammed Fatih BALIN 2ff3006c35 [CUDA][Bug] CSR transpose bug in CUDA 12 (#7295) 2024-04-12 02:54:13 -04:00
Muhammed Fatih BALIN 73e01d6daa [CUDA] Update CCCL to 2.3.0 (#7171) 2024-02-29 00:37:00 -05:00
Muhammed Fatih BALIN 5185c522b0 [Misc] Eliminate compile warnings (#6685) 2023-12-04 21:47:28 -05:00
Muhammed Fatih BALIN 5e78e070f4 [Misc] Fix signed unsigned comparison warning (#6602) 2023-11-23 08:17:16 +08:00
Muhammed Fatih BALIN bfde142239 [CUDA] Fix issue about integer overflow (#6586) 2023-11-22 13:01:47 +08:00
Hugo MacDermott-Opeskin 4a42027d4a [Build] Add CMake changes from conda-forge build (#6189)
Co-authored-by: Hongzhi (Steve), Chen <chenhongzhi.nkcs@gmail.com>
2023-09-01 11:21:03 +08:00
Xin Yao 08d18a47f2 [Build] Fix bf16/fp16 building issues for CUDA 12.2 (#6074)
Signed-off-by: Xin Yao <xiny@nvidia.com>
2023-08-14 10:12:41 +08:00
Chang Liu 88964a8253 [Bugfix] Fix cusparseCreateCsr format for cuda12 (#6121) 2023-08-10 07:35:32 -07:00
Songqing Zhang 6f28e1adb7 [misc] Fix build warnings (#6037)
Co-authored-by: Hongzhi (Steve), Chen <chenhongzhi.nkcs@gmail.com>
2023-07-26 14:38:03 +08:00
AdamGrabowski 4135b1bd5b [Performance] Fused sampling with compaction (#5924)
Co-authored-by: Hesham Mostafa <hesham.mostafa@intel.com>
2023-07-20 09:38:22 +08:00
Muhammed Fatih BALIN d3bd4c6112 [Feature] Adding kappa feature for labor (Cooperative Minibatching) (#6006)
Co-authored-by: Hongzhi (Steve), Chen <chenhongzhi.nkcs@gmail.com>
2023-07-19 10:34:28 +08:00
Muhammed Fatih BALIN f5f7e08e10 [Performance][CUDA] Sorting for indices for UVM code path. (#5882) 2023-07-14 14:12:30 +08:00
Muhammed Fatih BALIN 83115794c2 [Performance][CUDA] Faster CSRToCOO (#5648)
Co-authored-by: Hongzhi (Steve), Chen <chenhongzhi.nkcs@gmail.com>
2023-07-14 12:57:38 +08:00
Muhammed Fatih BALIN c3aea1b62c [Performance][CUDA] Labor UVA optimization (#5885)
Co-authored-by: Xin Yao <xiny@nvidia.com>
Co-authored-by: Rhett Ying <85214957+Rhett-Ying@users.noreply.github.com>
2023-07-13 19:56:31 +08:00
Ilia Taraban 62351d8f1b [Misc] Disable LibXSMM SpMM Cmp for AVX2 platforms (#5962) 2023-07-10 13:36:56 -07:00
Hongzhi (Steve), Chen 9ff56d2098 [Cleanup] Remove featgraph and unused TVM dependency. (#5767)
Co-authored-by: Ubuntu <ubuntu@ip-172-31-28-63.ap-northeast-1.compute.internal>
2023-06-02 15:14:31 +08:00
Andrzej Kotłowski 6862e37259 Upgrade libxsmm (#5725)
Co-authored-by: Rhett Ying <85214957+Rhett-Ying@users.noreply.github.com>
2023-05-24 11:25:57 +08:00
nv-dlasalle 46af76c30e [Performance Improvement] Make GPU sampling and to_block use pinned memory to decrease required synchronization (#5685) 2023-05-17 16:18:35 -07:00
Ilia Taraban ff9573c410 [Misc] Disable BF16 LibXSMM SpMM for AVX2 platforms (#5677) 2023-05-10 22:05:57 +02:00
Andrzej Kotłowski e0d2250efa [Performance] Improve COOToCSR implementation (#5508)
Co-authored-by: Hongzhi (Steve), Chen <chenhongzhi.nkcs@gmail.com>
2023-05-11 01:06:39 +08:00
Ilia Taraban 78ecd5086b [Fix] fix libxsmm build issues on Mac OS (#5626) 2023-04-28 21:55:51 +08:00
Ilia Taraban 8ecbfa57ae [Fix] restore SpMMSumCsrNaive function for float and double (#5615) 2023-04-27 07:59:49 +08:00
peizhou001 c51cc82e4b [Enhancement]Set default graph dataloader thread number (#5479)
Co-authored-by: Ubuntu <ubuntu@ip-172-31-16-19.ap-northeast-1.compute.internal>
2023-04-10 17:52:24 +08:00
Ilia Taraban acb4eb7ecd [Feature] Add bfloat16 support for CPU (#5497)
Co-authored-by: Hongzhi (Steve), Chen <chenhongzhi.nkcs@gmail.com>
2023-04-06 11:16:41 +02:00
Xin Yao 170203ae2b [Performance] Creating out buffers for segment_mm|sddmm via torch.empty() (#5462)
* update for segmentMM

* update for sddmm

* fix a bug
2023-03-23 17:41:07 +08:00
Daniil Sizov 87fb7ed05b [Config] Enable libxsmm by default for AVX cpu (#5165)
* Enable AVX by default

* Fix linting errors

* Fix win64 build (libxsmm not linked)

Libxsmm on Win64 is not linked, should be disabled by default

* Fix clang format issues

* Change lower supported cpu version to LIBXSMM_X86_AVX2

Change lower supported cpu version to LIBXSMM_X86_AVX2 to address https://github.com/dmlc/dgl/issues/3459 issue

* Fix unit test

Remove assumption that libxsmm is enabled in the config by default (only true for intel CPUs with AVX2 instructions)

---------

Co-authored-by: Ubuntu <ubuntu@ip-172-31-15-137.us-west-2.compute.internal>
Co-authored-by: Quan (Andy) Gan <coin2028@hotmail.com>
2023-03-16 02:05:22 +08:00
Rhett Ying b1ec112eeb Fix compile error on ubuntu22.04_g++11.3.0 (#5434) 2023-03-08 09:49:23 +08:00
Kacper Pietkun 308bd6f5b2 removed pragma omp for (#5334) 2023-03-01 11:48:04 +08:00
Kacper Pietkun 999374224f [Bugfix] fixed leak in SpMMCreateBlocks (#5210)
* fixed leak in SpMMCreateBlocks

* clang format
2023-02-23 16:30:44 +08:00
peizhou001 ed2e540911 [Enhancement] Change id hash map (#5304)
* change concurrent id hash map
2023-02-21 16:47:03 +08:00
Songqing Zhang 1329be9606 [Misc] Fix build warnings (#5303)
Co-authored-by: songqing.zhang <songqing.zhang@shopee.com>
2023-02-16 16:44:50 +08:00
Quan (Andy) Gan f62669b05c enable sparse on windows and mac (#5277)
* enable sparse on windows and mac

* that was stupid

* let's see what's going on..

* [Sparse] Fix the import error on Mac OS.

When using template functions that are defined in source files from DGL,
the loader of MacOS somehow cannot find their definitions. This fix simply
avoids depending on template functions from DGL headers.

With this fix, the sparse tests all pass on the MAC environment.

* ok this is the problem

* make errors clearer

* uh

* test

* Update __init__.py

* disabling ddp on windows

---------

Co-authored-by: czkkkkkk <zekucai@gmail.com>
2023-02-13 13:16:17 +08:00
peizhou001 f0b7cc96bd [Performance]Add concurrent cpu id hashmap (#5241)
Add Id hash map
2023-02-09 08:51:08 +08:00
nv-dlasalle 751b4c269d [Bugfix] Replace global cudaStream in Filter with runtime calls (fix #5153) (#5157)
* Add failing unit test

* Add fix

* Remove extra newline

* skip cpu test

Co-authored-by: Xin Yao <yaox12@outlook.com>
2023-01-12 16:27:29 +08:00
Andrzej Kotłowski 6069f34c4f [Performance] Fix for number of threads in COOToCSR (#5017)
Co-authored-by: Hongzhi (Steve), Chen <chenhongzhi.nkcs@gmail.com>
2023-01-06 09:14:27 +08:00
czkkkkkk 08b60eb162 [Sparse] Add SpMM and SDDMM on CSR and COO in dgl include headers (#5016) 2022-12-15 09:09:47 +08:00
czkkkkkk d02e560e07 Revert "[Sparse] Add SpMM and SDDMM." (#5014)
* Revert "[Sparse] Add SpMM and SDDMM. (#4999)"

This reverts commit 15365d7855.

* lint
2022-12-12 19:37:08 +08:00
czkkkkkk 15365d7855 [Sparse] Add SpMM and SDDMM. (#4999)
* [Sparse] Add SpMM and SDDMM

* Update

* Add CSR and CSC SpMM tests
2022-12-12 15:37:09 +08:00
Xin Yao aad3bd0484 [Bugfix] Fix empty tensors may being treated as pinned (#5005)
* fix empty tensor is treated as pinned

* avoid calling cudaHostGetDevicePointer on nullptr

* update empty array

* add a comment
2022-12-09 16:42:59 +08:00
Chang Liu fb223d4735 Add support for next cusparse release (#4974)
* Add support for next cusparse release

* Fix lint

* Add switch and tune the performance

* Fix lint issue

* Fine tune the heuristics

* Fix lint issue

* Address comments

* Minor fix

* Address comments
2022-12-06 11:55:56 +08:00
Muhammed Fatih BALIN b1e2695f3e [Feature] replace dgl PRNG with pcg32 (#4807)
* replace dgl PRNG with pcg32

* remove pcg submodule, add a simple implementation

* replace pcg32 with std::mt19937_64

* fix include order

* change RandomEngine to pcg32

* Remove custom pcg32 implementation, use the submodule provided by the original author.

* minor bug

* move include for linting

* include pcg for tests too

Co-authored-by: Hongzhi (Steve), Chen <chenhongzhi.nkcs@gmail.com>
2022-12-01 09:19:28 +08:00
Xin Yao c59000ac3a [Cleanup] Remove duplicated _IndexSelect (#4874) 2022-11-24 14:48:37 +08:00
Ping Gong aa41989573 [Performance] Leverage hashmap to accelerate CSRSliceMatrix<kDGLCUDA, IdType> (#4924)
* Leverage hashmap to accelerate CSRSliceMatrix

* fix lint check

* use `min` in cuda_runtime.ch

* fix hash func

* add some comments and adjust the <grid,block> of the _SegmentMaskColKernel kernel

* set device and stream for thrust::for_each

* use thrust::cuda::par_nosync

Co-authored-by: Xin Yao <xiny@nvidia.com>
2022-11-22 17:04:47 +08:00
Muhammed Fatih BALIN bf264d00fe [Feature] (La)yer-Neigh(bor) sampling implementation (#4668)
* adding LABOR sampling

* add ladies and pladies samplers

* fix compile error after rebase

* add reference for ladies sampler

* Improve ladies implementation.

* weighted labor sampling initial implementation draft
fix indentation and small bug in ladies script

* importance_sampling currently doesn't work with weights

* fix weighted importance sampling

* move labor example into its own folder

* lint fixes

* Improve documentation

* remove examples from the main PR

* fix linting by not using c++17 features

* fix documentation of labor_sampler.py

* update documentation for labor.py

* reformat the labor.py file with black

* fix linting errors

* replace exception use with if

* fix typo in error comment

* fixing win64 build for ci

* fixing weighted implementation, works now.

* fix bug in the weighted case and importance_sampling==0

* address part of the reviews

* remove unused code paths from cuda

* remove unused code path from cpu side

* remove extra features of labor making use of random seed.

* fix exclude_edges bug

* remove pcg and seed logic from cpu implementation, seed logic should still work for cuda.

* minor style change

* refactor CPU implementation, take out the importance_sampling probability computation into a function.

* improve CUDAWorkspaceAllocator

* refactor importance_sampling part out to a function

* minor optimization

* fix linting issue

* Revert "remove pcg and seed logic from cpu implementation, seed logic should still work for cuda."

This reverts commit c250e07ac6d7e13f57e79e8a2c2f098d777378c2.

* Revert "remove extra features of labor making use of random seed."

This reverts commit 7f99034353080308f4783f27d9a08bea343fb796.

* fix the documentation

* disable NIDs

* improve the documentation in the code

* use the stream argument in pcg32 instead of skipping ahead t times, can discard the use of hashmap now since it is faster this way.

* fix linting issue

* address another round of reviews

* further optimize CPU LABOR sampling implementation

* fix linting error

* update the comment

* reformat

* rename and rephrase comment

* fix formatting according to new linting specs

* fix compile error due to renaming, fix linting.

* lint

* rename DGLHeteroGraph to DGLGraph to match master

* replace other occurrences of DGLHeteroGraph to DGLGraph

Co-authored-by: Muhammed Fatih BALIN <m.f.balin@gmail.com>
Co-authored-by: Kaan Sancak <kaansnck@gmail.com>
Co-authored-by: Quan Gan <coin2028@hotmail.com>
2022-11-22 09:03:02 +08:00
Quan (Andy) Gan ca14488608 Revert "[Kernel] Parallel find edges (#4878)" (#4899)
This reverts commit 00c27cb264.
2022-11-15 17:57:14 +08:00
Quan (Andy) Gan 5b193f9b7c Revert "[Performance] Make IdHashMap parallel (#4881)" (#4898)
This reverts commit 56962858cc.
2022-11-15 17:56:56 +08:00
Quan (Andy) Gan 56962858cc [Performance] Make IdHashMap parallel (#4881)
* make IdHashMap parallel

* fix

* Update array_utils.h
2022-11-15 15:49:30 +08:00
Quan (Andy) Gan 00c27cb264 [Kernel] Parallel find edges (#4878)
* use runtime parallel_for

* grain size

* Update array_index_select.cc
2022-11-15 15:48:55 +08:00