Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[REVIEW] Miscellaneous tech debts/cleanups #286

Merged

Conversation

viclafargue
Copy link
Contributor

@viclafargue viclafargue commented Jul 1, 2021

Miscellaneous updates to solve tech debts in RAFT :

  • Removal of handle host and device allocators
  • Addition of a get_thrust_policy method to the handle
  • Usage of get_thrust_policy where handle is available
  • Removal of rmm::device_vector
  • Use of RMM device allocator in the raft::allocate function
  • Creation of an allocation + deallocation helper system
  • Usage of rmm::exec_policy instead of thrust::cuda::par.on when no handle is available

@divyegala
Copy link
Member

@viclafargue @dantegd should we keep the host allocator on the handle? RMM does not provide a singleton instance for a host allocator, just wrapper classes around two types of allocators: new-delete and pinned memory. Alternatively, I have not yet seen the host allocator being used anywhere, and since pinned memory isn't really our use-case, we can remove it and let the developer allocate host memory as they see fit

Copy link
Member

@divyegala divyegala left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I have, on a first pass, gone through all the changes addressed by this PR and they look great. Only have comments on the new get_thrust_policy method. Thanks for going through these so quickly, Victor!

cpp/include/raft/handle.hpp Outdated Show resolved Hide resolved
cpp/include/raft/handle.hpp Outdated Show resolved Hide resolved
cpp/include/raft/handle.hpp Outdated Show resolved Hide resolved
cpp/include/raft/handle.hpp Outdated Show resolved Hide resolved
cpp/include/raft/handle.hpp Outdated Show resolved Hide resolved
@viclafargue viclafargue added breaking Breaking change improvement Improvement / enhancement to an existing function labels Jul 19, 2021
@viclafargue viclafargue changed the base branch from branch-21.08 to branch-21.10 July 19, 2021 16:30
@github-actions github-actions bot added the CMake label Aug 4, 2021
cpp/include/raft/cudart_utils.h Outdated Show resolved Hide resolved
cpp/include/raft/cudart_utils.h Outdated Show resolved Hide resolved
cpp/include/raft/cudart_utils.h Outdated Show resolved Hide resolved
cpp/include/raft/cudart_utils.h Outdated Show resolved Hide resolved
cpp/include/raft/cudart_utils.h Outdated Show resolved Hide resolved
@viclafargue
Copy link
Contributor Author

rerun tests

@dantegd
Copy link
Member

dantegd commented Aug 24, 2021

rerun tests

1 similar comment
@viclafargue
Copy link
Contributor Author

rerun tests

@dantegd dantegd dismissed divyegala’s stale review August 27, 2021 15:26

stale review, comments have been addressed, need to merge at the soonest

@dantegd
Copy link
Member

dantegd commented Aug 27, 2021

@gpucibot merge

@rapids-bot rapids-bot bot merged commit 1c4e1e6 into rapidsai:branch-21.10 Aug 27, 2021
rapids-bot bot pushed a commit to rapidsai/cugraph that referenced this pull request Aug 27, 2021
This PR apply modifications to the cuGraph codebase to account for changes in RAFT and RMM :
- rapidsai/raft#283
- rapidsai/raft#285
- rapidsai/raft#286
- rapidsai/rmm#816

This PR requires some changes in the cuHornet dependency : rapidsai/cuhornet#52

Authors:
  - Victor Lafargue (https://github.com/viclafargue)

Approvers:
  - Brad Rees (https://github.com/BradReesWork)
  - AJ Schmidt (https://github.com/ajschmidt8)
  - Seunghwa Kang (https://github.com/seunghwak)
  - Chuck Hastings (https://github.com/ChuckHastings)

URL: #1707
rapids-bot bot pushed a commit to rapidsai/cuml that referenced this pull request Aug 30, 2021
This PR apply modifications to the cuML codebase to account for changes in RAFT and RMM :
- rapidsai/raft#283
- rapidsai/raft#285
- rapidsai/raft#286
- rapidsai/rmm#816

Authors:
  - Victor Lafargue (https://github.com/viclafargue)
  - Dante Gama Dessavre (https://github.com/dantegd)

Approvers:
  - William Hicks (https://github.com/wphicks)
  - Micka (https://github.com/lowener)
  - Dante Gama Dessavre (https://github.com/dantegd)
  - Divye Gala (https://github.com/divyegala)

URL: #4077
vimarsh6739 pushed a commit to vimarsh6739/cuml that referenced this pull request Oct 9, 2023
This PR apply modifications to the cuML codebase to account for changes in RAFT and RMM :
- rapidsai/raft#283
- rapidsai/raft#285
- rapidsai/raft#286
- rapidsai/rmm#816

Authors:
  - Victor Lafargue (https://github.com/viclafargue)
  - Dante Gama Dessavre (https://github.com/dantegd)

Approvers:
  - William Hicks (https://github.com/wphicks)
  - Micka (https://github.com/lowener)
  - Dante Gama Dessavre (https://github.com/dantegd)
  - Divye Gala (https://github.com/divyegala)

URL: rapidsai#4077
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
breaking Breaking change CMake cpp improvement Improvement / enhancement to an existing function python
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[BUG] Replace thrust/rmm::device_vector in MST with rmm::device_uvector
4 participants