Add support for half in CAGRA+HNSW
This PR add support for half dtype for HNSW in C++, C and python, as well as some tests with it. I had to modify a bit the HNSW patch in order to enable computation on half data types. I also added the support of inner-product distance for int8/uint8 data type.
This pull request requires additional validation before any workflows can run on NVIDIA's runners.
Pull request vetters can view their responsibilities here.
Contributors can view more details about this message here.
/ok to test 6660dff
/ok to test c6a93c2
/ok to test 72790a4
/ok to test c3c82e1
/ok to test 8f51529
/ok to test c7c56b5
/ok to test eab0cbe
/merge