Parallel Strategies for the Execution of Top-k Queries with MaxScore on GPUs

MaxScore and its variations are efficient DAAT query evaluation methods which use dynamic pruning based on the potential relevance of documents, to provide fast and precise results. These are essential characteristics for large scale search engines. In an attempt to circumvent the inherent sequential nature of DAAT strategies, we applied two parallel strategies to implement new variations of MaxScore to execute on GPUs. The first strategy splits the posting lists based on their size to share the work among thread blocks and SMs of a GPU, while the second strategy partitions the posting lists based on the range of document IDs (docIDs). In order to improve the pruning efficiency of the parallel algorithms, we also evaluated three different strategies for sharing the threshold among the processing elements. Experiments were carried out under different sizes of the postings list, and results demonstrate the viability of both strategies and their GPU-based implementations. The sizebased partitioning showed higher speedups (18×) but lower recall for retrieved documents, while the docID-based partitioning can retrieve the exact top-k documents with slightly lower speedups (16×). Threshold sharing demonstrated significant performance gains for long postings lists. As novelty and contribution, to the best of our knowledge, this is the first parallelization of MaxScore for GPUs. Results show that our strategies are suitable for the parallelization of a class of DAAT strategies on GPUs.

[1]  Gang Wang,et al.  Efficient lists intersection by CPU-GPU cooperative computing , 2010, 2010 IEEE International Symposium on Parallel & Distributed Processing, Workshops and Phd Forum (IPDPSW).

[2]  Andrei Z. Broder,et al.  Efficient query evaluation using a two-level retrieval process , 2003, CIKM '03.

[3]  Mauricio Marín,et al.  Multithreaded Processing in Dynamic Inverted Indexes for Web Search Engines , 2015, LSDS-IR@CIKM.

[4]  Mauricio Marín,et al.  Distributing Efficiently the Block-Max WAND Algorithm , 2013, ICCS.

[5]  Veronica Gil Costa,et al.  A Parallel Implementation of WAND on GPUs , 2018, 2018 26th Euromicro International Conference on Parallel, Distributed and Network-based Processing (PDP).

[6]  Torsten Suel,et al.  Faster top-k document retrieval using block-max indexes , 2011, SIGIR.

[7]  Rimon Tadros,et al.  Accelerating Web Search using GPUs , 2015 .

[8]  Surajit Chaudhuri,et al.  Interval-based pruning for top-k processing over compressed lists , 2011, 2011 IEEE 27th International Conference on Data Engineering.

[9]  Howard R. Turtle,et al.  Query Evaluation: Strategies and Optimizations , 1995, Inf. Process. Manag..

[10]  Gang Wang,et al.  GPU-Accelerated Block-Max Query Processing , 2017, ICA3PP.

[11]  Torsten Suel,et al.  Using graphics processors for high-performance IR query processing , 2008, WWW.

[12]  Veronica Gil Costa,et al.  Performance evaluation of single vs. batch of queries on GPUs , 2020, Concurr. Comput. Pract. Exp..

[13]  Berkant Barla Cambazoglu,et al.  Scalability Challenges in Web Search Engines , 2015, Scalability Challenges in Web Search Engines.