On Mapping the Sorted-Set Intersection Problem onto a Graphics Processing Unit

  • Syun-Sheng Jhan
  • Liang-Tsung Huang
  • Lien-Fu Lai
  • Kai-Cheng Wei
  • Tsung-Yu Wei
  • Chao-Chin Wu
Conference paper
Part of the Lecture Notes in Electrical Engineering book series (LNEE, volume 234)


The sorted-set intersection problem is important because it plays a key role in many algorithms. Instead of processing multiple short sorted-set intersections concurrently in previous work, this work focuses on how to efficiently find the intersection from two long sorted sets using emerging general-purpose graphics processing units (GPUs). We have implemented and evaluated four different algorithms to solve the set intersection problem. According to the experimental results, we identify which algorithm is the best choice based on the problem size.


Graphics processing unit Set intersection Parallel computing 



The authors would like to thank the National Science Council, Taiwan, for financially supporting this research under Contract No. NSC101-2221-E-018-030.


  1. 1.
    Barbay J, Lopez-Ortiz A, Lu T (2006) Faster adaptive set intersections for text searching. In: WEA 2006. Springer, Berlin/New York, pp 146–157Google Scholar
  2. 2.
    Barbay J, Lopez-Ortiz A, Lu T, Salinger A (2010) An experimental investigation of set intersection algorithms for text searching. J Exp Algorithm 14(7):3.7–3.24Google Scholar
  3. 3.
    Demaine ED, Lopez-Ortiz A, Munro JI (2000) Adaptive set intersections, unions, and differences. In: SODA, Philadelphia, 2000, pp 743–752Google Scholar
  4. 4.
    Ding B, Konig AC (2011) Fast set intersection in memory. In: Proceeding of the VLDB Endow, Seattle, 2011, vol 4, pp 255–266Google Scholar
  5. 5.
    Hwang FK, Lin S (1972) A simple algorithm for merging two disjoint linearly-ordered sets. SIAM J Comput 1:31–39MathSciNetMATHCrossRefGoogle Scholar
  6. 6.
    Sanders P, Transier F (2007) Intersection in integer inverted indices. In: ALENEX. SIAM, Philadelphia, 2007Google Scholar
  7. 7.
    Tatikonda S, Junqueira F, Cambazoglu BB, Plachouras V (2009) On efficient posting list intersection with multicore processors. In: SIGIR ’09, New York, 2009, pp 738–739Google Scholar
  8. 8.
    Tsirogiannis D, Guha S, Koudas N (2009) Improving the performance of list intersection. In: Proceedings of the VLDB Endow, Lyon, Aug 2009, vol 2, pp 838–849Google Scholar
  9. 9.
    Ao N, Zhang F, Wu D, Stones DS, Wang G, Liu X, Liu J, Lin S (2011) Efficient parallel lists intersection and index compression algorithms using graphics processing units. In: VLDB, Seattle, 5 Jan 2011Google Scholar
  10. 10.
    Ding S, He J, Yan H, Suel T (2008) Using graphics processors for high-performance IR query processing. In: WWW, New York, 2008, pp 1213–1214Google Scholar
  11. 11.
    Wu D, Zhang F, Ao N, Wang F, Liu X, Wang G (2009) A batched GPU algorithm for set intersection. In: Symposium on pervasive systems, algorithms, and networks, ISPAN ’09, Washington, DC, 2009, pp 752–756Google Scholar
  12. 12.
    Wu D, Zhang F, Ao N, Wang G, Liu X, Liu J (2010) Efficient lists intersection by CPU-GPU cooperative computing. In: IPDPS workshops. IEEE, Atlanta, 2010, pp 1–8Google Scholar

Copyright information

© Springer Science+Business Media New York 2013

Authors and Affiliations

  • Syun-Sheng Jhan
    • 1
  • Liang-Tsung Huang
    • 2
  • Lien-Fu Lai
    • 3
  • Kai-Cheng Wei
    • 3
  • Tsung-Yu Wei
    • 3
  • Chao-Chin Wu
    • 3
  1. 1.Department of Information TechnologyLing Tung UniversityTaichung CityTaiwan
  2. 2.Department of BiotechnologyMingdao UniversityChanghuaTaiwan
  3. 3.Department of Computer Science and Information EngineeringNational Changhua University of EducationChanghuaTaiwan

Personalised recommendations