Description
Follow-up to #16473, which added scalar quantization support for the float16 vector encoding.
The quantization works on fp32, so every fp16 vector is inflated to a float[] before it is quantized, and the centroid and corrective terms are computed in fp32 as well. Since Java has no fp16 arithmetic type, so there is no way to compute in fp16 at the moment. Once Java have support for doing arithmetic operations on fp16 directly, we should switch our existing implementation.
Description
Follow-up to #16473, which added scalar quantization support for the float16 vector encoding.
The quantization works on fp32, so every fp16 vector is inflated to a float[] before it is quantized, and the centroid and corrective terms are computed in fp32 as well. Since Java has no fp16 arithmetic type, so there is no way to compute in fp16 at the moment. Once Java have support for doing arithmetic operations on fp16 directly, we should switch our existing implementation.