@@ -11,27 +11,30 @@ TEST(DeglibRegressionIP, MultiInstructionSetBenchmark)
1111 std::vector<float > query_data;
1212 generate_synthetic_clustered_dataset (base_count, dim, base_data, query_data, query_count, num_clusters);
1313
14+ // Compute ground-truth using the scalar InnerProductFloat::compare() implementation.
1415 auto gt_data = compute_groundtruth_innerproduct (base_data, base_count, query_data, query_count, dim, 10 );
1516
16- // Explicitly test each distance variant with its own performance thresholds
17+ // Test each distance variant with its own performance thresholds
18+ // num_runs=50 extends the search measurement window to ~280ms per run,
19+ // reducing QPS noise from OS jitter and CPU power-state transitions.
1720 if (deglib::cpu::has_avx512 ()) {
18- run_regression_test (" AVX512_16Ext" , deglib::Metric::InnerProduct, 18000.0 , 9.0 , 0.797 ,
21+ run_regression_test (" AVX512_16Ext" , deglib::Metric::InnerProduct, 18000.0 , 10.3 , 0.774 ,
1922 base_data.data (), query_data.data (), base_count, query_count, dim, gt_data,
20- deglib::distances::fp32_ip::InnerProductFloat16Ext_AVX512{});
23+ deglib::distances::fp32_ip::InnerProductFloat16Ext_AVX512{}, 50 );
2124 }
2225 if (deglib::cpu::has_avx2 ()) {
23- run_regression_test (" AVX2_16Ext" , deglib::Metric::InnerProduct, 18000.0 , 9 .2 , 0.744 ,
26+ run_regression_test (" AVX2_16Ext" , deglib::Metric::InnerProduct, 18000.0 , 10 .2 , 0.774 ,
2427 base_data.data (), query_data.data (), base_count, query_count, dim, gt_data,
25- deglib::distances::fp32_ip::InnerProductFloat16Ext_AVX2{});
28+ deglib::distances::fp32_ip::InnerProductFloat16Ext_AVX2{}, 50 );
2629 }
2730 if (deglib::cpu::has_sse42 ()) {
28- run_regression_test (" SSE_16Ext" , deglib::Metric::InnerProduct, 15000.0 , 10.0 , 0.757 ,
31+ run_regression_test (" SSE_16Ext" , deglib::Metric::InnerProduct, 15000.0 , 11.8 , 0.774 ,
2932 base_data.data (), query_data.data (), base_count, query_count, dim, gt_data,
30- deglib::distances::fp32_ip::InnerProductFloat16Ext_SSE{});
33+ deglib::distances::fp32_ip::InnerProductFloat16Ext_SSE{}, 50 );
3134 }
32- run_regression_test (" Scalar" , deglib::Metric::InnerProduct, 12000.0 , 15.0 , 0.784 ,
35+ run_regression_test (" Scalar" , deglib::Metric::InnerProduct, 12000.0 , 15.4 , 0.78 ,
3336 base_data.data (), query_data.data (), base_count, query_count, dim, gt_data,
34- deglib::distances::fp32_ip::InnerProductFloat{});
37+ deglib::distances::fp32_ip::InnerProductFloat{}, 50 );
3538}
3639
3740TEST (DeglibRegressionIP, DistanceRecallAllVariantsSameDataset)
0 commit comments