diff --git a/cpp/src/utilities/cuda_helpers.cuh b/cpp/src/utilities/cuda_helpers.cuh index eccf8e1538..778dcd5b60 100644 --- a/cpp/src/utilities/cuda_helpers.cuh +++ b/cpp/src/utilities/cuda_helpers.cuh @@ -9,13 +9,18 @@ #include +#include + #include #include +#include #include #include #include #include #include +#include +#include #include #include @@ -242,7 +247,11 @@ inline size_t get_device_memory_size() { size_t free_mem, total_mem; RAFT_CUDA_TRY(cudaMemGetInfo(&free_mem, &total_mem)); - // TODO (bdice): Restore limiting adaptor check after updating CCCL to support resource_cast + + auto res = rmm::mr::get_current_device_resource_ref(); + auto limiting_adaptor = cuda::mr::resource_cast(&res); + if (limiting_adaptor) { return std::min(total_mem, limiting_adaptor->get_allocation_limit()); } + return total_mem; }