Skip to content

Simplify CAGRA search call hierarchy #343

@achirkin

Description

@achirkin

Past several major code updates since RAFT release (latest change #296) parts of CAGRA search code have become unnecessary complicated or obsolete.

  • neighbors/detail/cagra/factory.cuh once served the instance parameter selection logic (including the non-type template parameters) via the factory class; now this logic can be replaced with a single switch-case block on search_algo.
  • search_params <- search_plan_impl_base <- search_plan_impl <- search is overly complicated for a plain task of choosing between the search algorithms
  • dataset_descriptor_base_t and related types (implementation types and the descriptor host) names are confusing
  • The way the polymorphic behavior is implemented in dataset_descriptor_base_t and its member type args_t is hard to read.

Metadata

Metadata

Assignees

Labels

improvementImproves an existing functionality

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions