zilliztech / starling

Other
41 stars 13 forks source link

Add Custom Range Search and Reuse Intermediate Results Range Search Strategies #13

Closed PwzXxm closed 1 year ago

PwzXxm commented 2 years ago

This PR contains

  1. Add custom range search
  2. Add reuse intermediate results range search which iterates page search
  3. Remove mem_topk
  4. Modifies in-memory index path
github-actions[bot] commented 1 year ago

Results on ubuntu-20.04 and uint8 dataset int_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML0_MEMK3_MEM_USE_FREQ0_PS0_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 463.90 34382.36 171153.00 17.83 12.58 30.99 12 2 423.72 37669.66 114717.00 19.67 14.67 30.99 14 2 389.04 41091.66 108746.00 21.52 15.32 31.00 16 2 357.47 44707.13 109529.00 23.39 18.68 31.00

int_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML5_MEMK3_MEM_USE_FREQ0_PS0_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 507.19 31498.22 201050.00 16.41 10.41 30.99 12 2 454.98 35043.66 170429.00 18.26 11.91 30.99 14 2 415.90 38435.58 107812.00 20.13 12.78 31.00 16 2 380.45 42011.14 107471.00 21.99 13.83 31.00

int_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML0_MEMK3_MEM_USE_FREQ0_PS1_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 1054.72 15113.52 196882.00 7.83 0.00 31.00 12 2 1006.89 15838.92 98876.00 8.34 0.00 31.00 14 2 939.71 16965.33 94471.00 8.87 0.00 31.00 16 2 892.51 17849.58 92725.00 9.37 0.00 31.00

int_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE1000_BW2_T16_MEML0_MEMK3_MEM_USE_FREQ0_PS1_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 1837.13 8638.26 146586.00 4.44 0.00 31.00 12 2 1662.25 9559.94 145108.00 4.96 0.00 31.00 14 2 1366.56 11651.68 196553.00 5.50 0.00 31.00 16 2 1344.88 11835.49 175958.00 6.00 0.00 31.00

int_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML5_MEMK3_MEM_USE_FREQ0_PS1_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 1131.73 14087.99 85918.00 7.41 0.00 31.00 12 2 1024.67 15560.72 152080.00 8.01 0.00 31.00 14 2 968.34 16415.23 94582.00 8.60 0.00 31.00 16 2 918.74 17304.73 98089.00 9.12 0.00 31.00

int_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML5_MEMK3_MEM_USE_FREQ1_PS1_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 1100.90 14483.82 120035.00 7.57 0.00 31.00 12 2 1036.02 15393.18 90027.00 8.09 0.00 31.00 14 2 968.52 16430.59 90516.00 8.63 0.00 31.00 16 2 894.14 17838.98 140176.00 9.15 0.00 31.00

int_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML5_MEMK3_MEM_USE_FREQ0_PS1_USE_RATIO1.0_GP_USE_FREQ{1}_GP_LOCK_NUMS100_GP_CUT3.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 1045.17 15240.57 129471.00 7.95 0.00 31.00 12 2 941.34 16859.99 187856.00 8.55 0.00 31.00 14 2 914.13 17437.28 99131.00 9.16 0.00 31.00 16 2 852.39 18672.87 158602.00 9.70 0.00 31.00

int_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML5_MEMK3_MEM_USE_FREQ1_PS1_USE_RATIO1.0_GP_USE_FREQ{1}_GP_LOCK_NUMS100_GP_CUT3.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 1102.00 14450.44 94324.00 7.46 0.00 31.00 12 2 1039.43 15315.33 83964.00 8.06 0.00 31.00 14 2 955.76 16634.93 98308.00 8.68 0.00 31.00 16 2 883.39 18047.70 197206.00 9.26 0.00 31.00

github-actions[bot] commented 1 year ago

Results on ubuntu-20.04 and float dataset float_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML0_MEMK3_MEM_USE_FREQ0_PS0_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 481.72 33145.88 91057.00 17.35 6.28 86.23 12 2 436.53 36530.57 71331.00 19.14 7.41 89.42 14 2 398.32 40101.44 93200.00 20.98 8.74 91.73 16 2 366.29 43636.56 104121.00 22.83 10.14 93.46

float_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML5_MEMK3_MEM_USE_FREQ0_PS0_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 527.33 30294.92 68149.00 15.86 4.93 86.09 12 2 473.42 33763.71 62954.00 17.66 6.49 89.32 14 2 429.08 37228.63 63914.00 19.48 7.10 91.72 16 2 392.34 40752.66 88694.00 21.33 8.31 93.42

float_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML0_MEMK3_MEM_USE_FREQ0_PS1_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 745.53 21385.55 63760.00 11.23 0.00 94.46 12 2 693.74 22983.85 89412.00 12.06 0.00 95.89 14 2 648.41 24597.00 80098.00 12.89 0.00 96.89 16 2 608.99 26173.01 90934.00 13.72 0.00 97.60

float_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE1000_BW2_T16_MEML0_MEMK3_MEM_USE_FREQ0_PS1_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 1076.05 14805.87 60619.00 7.77 0.00 94.15 12 2 979.89 16263.72 60619.00 8.57 0.00 95.63 14 2 889.49 17855.24 61565.00 9.37 0.00 96.71 16 2 829.28 19222.38 61443.00 10.15 0.00 97.50

float_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML5_MEMK3_MEM_USE_FREQ0_PS1_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 795.49 20012.43 64566.00 10.50 0.00 94.42 12 2 738.78 21581.61 76931.00 11.34 0.00 95.84 14 2 688.60 23157.66 98665.00 12.18 0.00 96.87 16 2 643.38 24772.91 89081.00 13.00 0.00 97.62

float_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML5_MEMK3_MEM_USE_FREQ1_PS1_USE_RATIO1.0_GP_USE_FREQ{0}_GP_LOCK_NUMS0_GP_CUT4096.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 758.77 20937.78 150460.00 10.99 0.00 94.46 12 2 708.39 22507.76 63105.00 11.81 0.00 95.88 14 2 661.65 24067.65 90770.00 12.64 0.00 96.91 16 2 621.79 25643.79 89533.00 13.47 0.00 97.63

float_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML5_MEMK3_MEM_USE_FREQ0_PS1_USE_RATIO1.0_GP_USE_FREQ{1}_GP_LOCK_NUMS100_GP_CUT3.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 723.19 22040.51 87709.00 11.59 0.00 90.77 12 2 660.46 24137.27 64809.00 12.65 0.00 92.94 14 2 607.92 26141.07 89030.00 13.73 0.00 94.60 16 2 564.77 28234.35 93416.00 14.81 0.00 95.80

float_10k_M1_R16_L32_B0.00003/search/search_K5_CACHE0_BW2_T16_MEML5_MEMK3_MEM_USE_FREQ1_PS1_USE_RATIO1.0_GP_USE_FREQ{1}_GP_LOCK_NUMS100_GP_CUT3.log L Beamwidth QPS Mean Latency 99.9 Latency Mean IOs CPU (s) Recall@5 10 2 719.74 22146.94 63823.00 11.63 0.00 90.77 12 2 656.74 24277.85 90208.00 12.72 0.00 92.99 14 2 603.92 26306.42 88718.00 13.81 0.00 94.63 16 2 559.18 28412.78 100108.00 14.88 0.00 95.80