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

[FEA] Use RMM with FAISS GPUResources #2821

Closed
cjnolet opened this issue Sep 13, 2020 · 6 comments
Closed

[FEA] Use RMM with FAISS GPUResources #2821

cjnolet opened this issue Sep 13, 2020 · 6 comments
Labels
Build or Dep Issues related to building the code or dependencies conda conda issue CUDA / C++ CUDA issue inactive-90d

Comments

@cjnolet
Copy link
Member

cjnolet commented Sep 13, 2020

Recent updates to FAISS now provide a means to plug in our own custom memory manager (RMM) so that we can control each allocation and deallocation.

This is needed on cuml, ideally before the approximate indices are included, since they require indexes with memory exclusively owned and managed by FAISS. This is particularly a concern when using the pool allocator, because a user could allocate most of their GPU's memory for RAPIDS RMM and be confused when they run KNN with approximate indices and receive out of memory errors.

@cjnolet
Copy link
Member Author

cjnolet commented Nov 19, 2020

This is currently blocked by conda-forge/faiss-split-feedstock#17. We need to wait for the FAISS 1.6.4 conda package

@h-vetinari
Copy link

Just FYI, conda-forge/faiss-split-feedstock#17 has been merged 🙃

@cjnolet cjnolet added Build or Dep Issues related to building the code or dependencies conda conda issue CUDA / C++ CUDA issue labels Dec 14, 2020
@cjnolet
Copy link
Member Author

cjnolet commented Dec 14, 2020

This change will also require the hardcoded int64_t knn indices to be updated to int everywhere. We should be able to use the int64_t indices when necessary (such as in scaling the mnmg knn).

@cjnolet cjnolet mentioned this issue Dec 14, 2020
@JohnZed
Copy link
Contributor

JohnZed commented Jan 7, 2021

Particularly important for approximate NN, in which FAISS owns a larger block of memory. Will also require updating indices back to 32-bit for newer FAISS rev.

@github-actions
Copy link

This issue has been marked stale due to no recent activity in the past 30d. Please close this issue if no further response or action is needed. Otherwise, please respond with a comment indicating any updates or changes to the original issue and/or confirm this issue still needs to be addressed. This issue will be marked rotten if there is no activity in the next 60d.

@github-actions
Copy link

This issue has been labeled inactive-90d due to no recent activity in the past 90 days. Please close this issue if no further response or action is needed. Otherwise, please respond with a comment indicating any updates or changes to the original issue and/or confirm this issue still needs to be addressed.

rapids-bot bot pushed a commit to rapidsai/raft that referenced this issue Jan 19, 2022
@dantegd dantegd closed this as completed Jan 24, 2022
rapids-bot bot pushed a commit that referenced this issue Mar 8, 2022
Answers #2821

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

Approvers:
  - Dante Gama Dessavre (https://github.com/dantegd)

URL: #4297
vimarsh6739 pushed a commit to vimarsh6739/cuml that referenced this issue Oct 9, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Build or Dep Issues related to building the code or dependencies conda conda issue CUDA / C++ CUDA issue inactive-90d
Projects
None yet
Development

No branches or pull requests

5 participants