Geometric Algorithms for Private-Cache Chip Multiprocessors

(Extended Abstract)
  • Deepak Ajwani
  • Nodari Sitchinava
  • Norbert Zeh
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6347)


We study techniques for obtaining efficient algorithms for geometric problems on private-cache chip multiprocessors. We show how to obtain optimal algorithms for interval stabbing counting, 1-D range counting, weighted 2-D dominance counting, and for computing 3-D maxima, 2-D lower envelopes, and 2-D convex hulls. These results are obtained by analyzing adaptations of either the PEM merge sort algorithm or PRAM algorithms. For the second group of problems—orthogonal line segment intersection reporting, batched range reporting, and related problems—more effort is required. What distinguishes these problems from the ones in the previous group is the variable output size, which requires I/O-efficient load balancing strategies based on the contribution of the individual input elements to the output size. To obtain nearly optimal algorithms for these problems, we introduce a parallel distribution sweeping technique inspired by its sequential counterpart.


Shared Memory Vertical Segment Horizontal Segment Lower Envelope Intersection Count 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    Aggarwal, A., Vitter, J.S.: The input/output complexity of sorting and related problems. Communications of the ACM 31(9), 1116–1127 (1988)CrossRefMathSciNetGoogle Scholar
  2. 2.
    Arge, L., Goodrich, M.T., Nelson, M.J., Sitchinava, N.: Fundamental parallel algorithms for private-cache chip multiprocessors. In: SPAA, pp. 197–206 (2008)Google Scholar
  3. 3.
    Arge, L., Goodrich, M.T., Sitchinava, N.: Parallel external memory graph algorithms. In: IPDPS (2010) Google Scholar
  4. 4.
    Arge, L., Mølhave, T., Zeh, N.: Cache-oblivious red-blue line segment intersection. In: Halperin, D., Mehlhorn, K. (eds.) ESA 2008. LNCS, vol. 5193, pp. 88–99. Springer, Heidelberg (2008)CrossRefGoogle Scholar
  5. 5.
    Atallah, M.J., Cole, R., Goodrich, M.T.: Cascading divide-and-conquer: A technique for designing parallel algorithms. SIAM J. Comp. 18(3), 499–532 (1989)zbMATHCrossRefMathSciNetGoogle Scholar
  6. 6.
    Atallah, M.J., Goodrich, M.T.: Efficient plane sweeping in parallel. In: SOCG, pp. 216–225 (1986)Google Scholar
  7. 7.
    Atallah, M.J., Goodrich, M.T.: Parallel algorithms for some functions of two convex polygons. Algorithmica 3, 535–548 (1988)zbMATHCrossRefMathSciNetGoogle Scholar
  8. 8.
    Bender, M.A., Fineman, J.T., Gilbert, S., Kuszmaul, B.C.: Concurrent cache-oblivious B-trees. In: SPAA, pp. 228–237 (2005)Google Scholar
  9. 9.
    Blelloch, G.E., Chowdhury, R.A., Gibbons, P.B., Ramachandran, V., Chen, S., Kozuch, M.: Provably good multicore cache performance for divide-and-conquer algorithms. In: SODA, pp. 501–510 (2008)Google Scholar
  10. 10.
    Brodal, G.S., Fagerberg, R.: Cache oblivious distribution sweeping. In: Widmayer, P., Ruiz, F.T., Bueno, R.M., Hennessy, M., Eidenbenz, S., Conejo, R. (eds.) ICALP 2002. LNCS, vol. 2380, pp. 426–438. Springer, Heidelberg (2002)CrossRefGoogle Scholar
  11. 11.
    Chowdhury, R.A., Ramachandran, V.: The cache-oblivious gaussian elimination paradigm: Theoretical framework, parallelization and experimental evaluation. In: SPAA, pp. 71–80 (2007)Google Scholar
  12. 12.
    Chowdhury, R.A., Ramachandran, V.: Cache-efficient dynamic programming for multicores. In: SPAA, pp. 207–216 (2008)Google Scholar
  13. 13.
    Chowdhury, R.A., Silvestri, F., Blakeley, B., Ramachandran, V.: Oblivious algorithms for multicores and network of processors. In: IPDPS (2010) Google Scholar
  14. 14.
    Datta, A.: Efficient parallel algorithms for geometric partitioning problems through parallel range searching. In: ICPP, pp. 202–209 (1994)Google Scholar
  15. 15.
    Dehne, F., Fabri, A., Rau-Chaplin, A.: Scalable parallel geometric algorithms for coarse grained multicomputers. In: SOCG, pp. 298–307 (1993)Google Scholar
  16. 16.
    Fjällström, P.O.: Parallel algorithms for batched range searching on coarse-grained multicomputers. Linköping Electronic Articles in Computer and Information Science 2(3) (1997)Google Scholar
  17. 17.
    Gibbons, P.: Theory: Asleep at the switch to many-core. In: Workshop on Theory and Many-Cores (T&MC) (May 2009)Google Scholar
  18. 18.
    Goodrich, M.T.: Intersecting line segments in parallel with an output-sensitive number of processors. SIAM J. Comp. 20(4), 737–755 (1991)zbMATHCrossRefMathSciNetGoogle Scholar
  19. 19.
    Goodrich, M.T., Tsay, J.J., Vengroff, D.E., Vitter, J.S.: External-memory computational geometry. In: FOCS, pp. 714–723 (1993)Google Scholar
  20. 20.
    Intel Corp.: Futuristic Intel chip could reshape how computers are built, consumers interact with their PCs and personal devices (December 2009),
  21. 21.
    Sitchinava, N.: Parallel external memory model – a parallel model for multi-core architectures. Ph.D. thesis, University of California, Irvine (2009)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2010

Authors and Affiliations

  • Deepak Ajwani
    • 1
  • Nodari Sitchinava
    • 1
  • Norbert Zeh
    • 2
  1. 1.MADALGO, Department of Computer ScienceUniversity of AarhusDenmark
  2. 2.Faculty of Computer ScienceDalhousie UniversityHalifaxCanada

Personalised recommendations