@@ -61,73 +61,65 @@ float MinusInnerProductFp16Scalar(const Float16 *lhs, const Float16 *rhs,
6161void InnerProductMatrix<Float16, 1 , 1 >::Compute(const ValueType *m,
6262 const ValueType *q, size_t dim,
6363 float *out) {
64- #if defined(__riscv_zvfh)
65- if (zvec::ailego::internal::CpuFeatures::static_flags_.RISCV_ZVFH ) {
66- *out = InnerProductRVV (m, q, dim);
67- return ;
68- }
69- #endif // __riscv_zvfh
70-
7164#if defined(__ARM_NEON)
7265 *out = InnerProductFp16NEON (m, q, dim);
66+ #elif defined(__riscv_zvfh)
67+ *out = InnerProductRVV (m, q, dim);
7368#else
7469#if defined(__AVX512FP16__)
7570 if (zvec::ailego::internal::CpuFeatures::static_flags_.AVX512_FP16 ) {
7671 *out = InnerProductFp16AVX512FP16 (m, q, dim);
7772 return ;
7873 }
79- #endif // __AVX512FP16__
74+ #endif // __AVX512FP16__
8075#if defined(__AVX512F__)
8176 if (zvec::ailego::internal::CpuFeatures::static_flags_.AVX512F ) {
8277 *out = InnerProductFp16AVX512 (m, q, dim);
8378 return ;
8479 }
85- #endif // __AVX512F__
80+ #endif // __AVX512F__
8681#if defined(__AVX__)
8782 if (zvec::ailego::internal::CpuFeatures::static_flags_.AVX ) {
8883 *out = InnerProductFp16AVX (m, q, dim);
8984 return ;
9085 }
91- #endif // __AVX__
86+ #endif // __AVX__
9287 *out = InnerProductFp16Scalar (m, q, dim);
93- #endif // __ARM_NEON
88+
89+ #endif // __ARM_NEON
9490}
9591
9692// ! Compute the distance between matrix and query (FP16, M=1, N=1)
9793void MinusInnerProductMatrix<Float16, 1 , 1 >::Compute(const ValueType *m,
9894 const ValueType *q,
9995 size_t dim, float *out) {
100- #if defined(__riscv_zvfh)
101- if (zvec::ailego::internal::CpuFeatures::static_flags_.RISCV_ZVFH ) {
102- *out = MinusInnerProductRVV (m, q, dim);
103- return ;
104- }
105- #endif // __riscv_zvfh
106-
10796#if defined(__ARM_NEON)
10897 *out = MinusInnerProductFp16NEON (m, q, dim);
98+ #elif defined(__riscv_zvfh)
99+ *out = MinusInnerProductRVV (m, q, dim);
109100#else
110101#if defined(__AVX512FP16__)
111102 if (zvec::ailego::internal::CpuFeatures::static_flags_.AVX512_FP16 ) {
112103 *out = MinusInnerProductFp16AVX512FP16 (m, q, dim);
113104 return ;
114105 }
115- #endif // __AVX512FP16__
106+ #endif // __AVX512FP16__
116107#if defined(__AVX512F__)
117108 if (zvec::ailego::internal::CpuFeatures::static_flags_.AVX512F ) {
118109 *out = MinusInnerProductFp16AVX512 (m, q, dim);
119110 return ;
120111 }
121- #endif // __AVX512F__
112+ #endif // __AVX512F__
122113#if defined(__AVX__)
123114 if (zvec::ailego::internal::CpuFeatures::static_flags_.AVX ) {
124115 *out = MinusInnerProductFp16AVX (m, q, dim);
125116 return ;
126117 }
127- #endif // __AVX__
118+ #endif // __AVX__
128119
129120 *out = MinusInnerProductFp16Scalar (m, q, dim);
130- #endif // __ARM_NEON
121+
122+ #endif // __ARM_NEON
131123}
132124
133125// --------------------------------------------------
@@ -140,7 +132,7 @@ float InnerProductSparseInSegmentFp16AVX512FP16(uint32_t m_sparse_count,
140132 uint32_t q_sparse_count,
141133 const uint16_t *q_sparse_index,
142134 const Float16 *q_sparse_value);
143- #endif // __AVX512FP16__
135+ #endif // __AVX512FP16__
144136
145137#if defined(__AVX__)
146138float InnerProductSparseInSegmentFp16AVX (uint32_t m_sparse_count,
@@ -149,7 +141,7 @@ float InnerProductSparseInSegmentFp16AVX(uint32_t m_sparse_count,
149141 uint32_t q_sparse_count,
150142 const uint16_t *q_sparse_index,
151143 const Float16 *q_sparse_value);
152- #endif // __AVX__
144+ #endif // __AVX__
153145
154146float InnerProductSparseInSegmentFp16Scalar (uint32_t m_sparse_count,
155147 const uint16_t *m_sparse_index,
@@ -179,14 +171,14 @@ float ComputeInnerProductSparseInSegmentFp16(uint32_t m_sparse_count,
179171 m_sparse_count, m_sparse_index, m_sparse_value, q_sparse_count,
180172 q_sparse_index, q_sparse_value);
181173 }
182- #endif // __AVX512FP16__
174+ #endif
183175#if defined(__AVX__)
184176 if (zvec::ailego::internal::CpuFeatures::static_flags_.AVX ) {
185177 return InnerProductSparseInSegmentFp16AVX (m_sparse_count, m_sparse_index,
186178 m_sparse_value, q_sparse_count,
187179 q_sparse_index, q_sparse_value);
188180 }
189- #endif // __AVX__
181+ #endif
190182 return InnerProductSparseInSegmentFp16Scalar (m_sparse_count, m_sparse_index,
191183 m_sparse_value, q_sparse_count,
192184 q_sparse_index, q_sparse_value);
0 commit comments