Skip to content

Remove host-fp32 → device-fp16 downcast path in NN-Descent once cuML accepts fp16 natively #2079

Description

@jinsolp

Background

NN-Descent currently supports internal_distance_dtype = CUDA_R_16F for fp32 inputs.
When the input lives on host memory, we downcast it to fp16 while copying it to device, so the on-device copy is in fp16 instead of its native fp32 dtype.
Doing this in NN-Descent is a special case relative to the rest of cuVS.

Proposal

Once cuML UMAP and HDBSCAN can natively accept fp16 input (tracked in NVIDIA/cuml#8102), remove the host-fp32 → device-fp16 downcast path from NN-Descent:

  • Drop the d_data_half_ buffer and convert_copy_kernel from cpp/src/neighbors/detail/nn_descent.cuh.
  • Remove the internal_distance_dtype parameter from the C++, C, and Python index params.

Related

Metadata

Metadata

Assignees

No one assigned

    Labels

    improvementImproves an existing functionality

    Type

    No type

    Projects

    Status
    Todo

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions