Skip to main content

cuvsBruteForceBuild

Function cuvsBruteForceBuild 

Source
pub unsafe extern "C" fn cuvsBruteForceBuild(
    res: cuvsResources_t,
    dataset: *mut DLManagedTensor,
    metric: cuvsDistanceType,
    metric_arg: f32,
    index: cuvsBruteForceIndex_t,
) -> cuvsError_t
Expand description

@defgroup bruteforce_c_index_build Bruteforce index build @{ / /** @brief Build a BRUTEFORCE index with a DLManagedTensor which has underlying DLDeviceType equal to kDLCUDA, kDLCUDAHost, kDLCUDAManaged, or kDLCPU. Also, acceptable underlying types are: 1. kDLDataType.code == kDLFloat and kDLDataType.bits = 32 2. kDLDataType.code == kDLFloat and kDLDataType.bits = 16

@code {.c} #include <cuvs/core/c_api.h> #include <cuvs/neighbors/brute_force.h>

// Create cuvsResources_t cuvsResources_t res; cuvsError_t res_create_status = cuvsResourcesCreate(&res);

// Assume a populated DLManagedTensor type here DLManagedTensor dataset;

// Create BRUTEFORCE index cuvsBruteForceIndex_t index; cuvsError_t index_create_status = cuvsBruteForceIndexCreate(&index);

// Build the BRUTEFORCE Index cuvsError_t build_status = cuvsBruteForceBuild(res, &dataset_tensor, L2Expanded, 0.f, index);

// de-allocate index and res cuvsError_t index_destroy_status = cuvsBruteForceIndexDestroy(index); cuvsError_t res_destroy_status = cuvsResourcesDestroy(res); @endcode

@param[in] res cuvsResources_t opaque C handle @param[in] dataset DLManagedTensor* training dataset @param[in] metric metric @param[in] metric_arg metric_arg @param[out] index cuvsBruteForceIndex_t Newly built BRUTEFORCE index @return cuvsError_t