Open tfeher opened 3 months ago
I'm investigating the options to factor out the distance computation from the kernel, so that an abstract "distance core" is passed to search kernels by pointers. This should reduce the overall binary size and the impact of increasing the number of distance core instances. I am not sure yet what will be the impact on the performance though.
Currently CAGRA supports PQ compression with
pq_len=2
adpq_len=4
. A larger compression ratio can be achieved if we allow largerpq_len
values, e.g. 8 and 16.pq_len
is a template parameter of the distance computation kernels. In the current setting we would need to instantiate new kernels for the larger pq_len values. This would add ~ 160 MB to the binary size.A preferred solution would be to make pq_len a runtime parameter.