skip to main content
10.1145/3282834.3282839acmconferencesArticle/Chapter ViewAbstractPublication PagesgisConference Proceedingsconference-collections
research-article

Data Structures for Parallel Spatial Algorithms on Large Datasets (Vision paper)

Published:06 November 2018Publication History

ABSTRACT

This paper describes data structures and algorithms for efficient implementation of GIS operations for large datasets on multicore Intel CPUs and on NVIDA GPUs. Typical operations are boolean combinations of polygons and map overlay. Efficient parallelization prefers simple regular data structures, such as structures of arrays of plain old datatypes. Warps of 32 threads are required to execute the same instruction (or be idle). Ideally, the data used by adjacent threads is adjacent in memory. Minimizing storage is important, as is accessing it in a regular pattern. That disparages pointers, linked lists, and trees. That implies that explicitly representing global topology is bad. If using only local topological formulae is sufficient, then it will be much faster. E.g., for many operations on a 2-D map (aka planar graph), the set of oriented edges suffices. Each edge knows the locations of its endpoints and the ids of its adjacent polygons. Any mass operation, such as area computation or point location, can be implemented as a map-reduce. All these techniques also apply in 3D to CAD/CAM and additive manufacturing. Indeed they are more important there.

References

  1. Dinesh Agarwal, Satish Puri, Xi He, and Sushil K Prasad. 2012. A system for GIS polygonal overlay computation on linux cluster-an experience and performance report. In Parallel and Distributed Processing Symposium Workshops & PhD Forum (IPDPSW), 2012 IEEE 26th International. IEEE, 1433--1439. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Alok Aggarwal, Bernard Chazelle, Leo Guibas, Colm O'Dunlaing, and Chee Yap. 1985. Parallel Computational Geometry. In Foundations of Computer Science -- 25th Annual Symposium. 468--477. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. AIM@SHAPE-VISIONAIR Shape Repository 2016. AIM@SHAPE-VISIONAIR Shape Repository. Retrieved 2016-02-02 from http://visionair.ge.imati.cnr.it//Google ScholarGoogle Scholar
  4. George Allen. 2014. CAD Implications of Additive Manufacturing (Presentation). In GDM 2014 Workshop: Geometric Design Facing Manufacturing. http://www.cs.technion.ac.il/gdm2014/Presentations/GDM2014_allen.pdf (retrieved 2016-11-15).Google ScholarGoogle Scholar
  5. Lars Arge and Mikkel Thorup. 2015. RAM-Efficient External Memory Sorting. Algorithmica 73, 4 (2015), 623--636. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Lars Arge, D. E. Vengroff, and J. S. Vitter. 1995. External-memory algorithms for processing line segments in geographic information systems. In Proc. Annual European Symposium on Algorithms, LNCS 979. 295--310. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. Sunil Arya, David M. Mount, Nathan S. Netanyahu, Ruth Silverman, and Angela Y. Wu. 1998. An Optimal Algorithm for Approximate Nearest Neighbor Searching in Fixed Dimensions. J. ACM 45, 6 (Nov. 1998), 891--923. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Samuel Audet, Cecilia Albertsson, Masana Murase, and Akihiro Asahara. 2013. Robust and Efficient Polygon Overlay on Parallel Stream Processors. In Proceedings of the 21st ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems (SIGSPATIAL'13). ACM, New York, NY, USA, 304--313. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. CGAL. 2018. Computational Geometry Algorithms Library. Retrieved 2018-09-09 from https://www.cgal.orgGoogle ScholarGoogle Scholar
  10. Mark de Berg, Otfried Cheong, and Marc van Kreveld. 2008. Computational Geometry: Algorithms and Applications (3 ed.). Springer. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Salles Viana Gomes de Magalhães. 2017. Exact and parallel intersection of 3D triangular meshes. Ph.D. Dissertation. Rensselaer Polytechnic Institute.Google ScholarGoogle Scholar
  12. Herbert Edelsbrunner and Ernst Peter Mücke. 1990. Simulation of Simplicity: A Technique to Cope with Degenerate Cases in Geometric Algorithms. ACM T. Graphics 9, 1 (January 1990), 66--104. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Wm Randolph Franklin. 1990. Calculating Map Overlay Polygon' Areas Without Explicitly Calculating the Polygons -- Implementation. In 4th International Symposium on Spatial Data Handling. Zürich, 151--160.Google ScholarGoogle Scholar
  14. W. Randolph Franklin. 2004. Analysis of Mass Properties of the Union of Millions of Polyhedra. In Geometric Modeling and Computing: Seattle 2003, M. L. Lucian and M. Neamtu (Eds.). Nashboro Press, Brentwood TN, 189--202.Google ScholarGoogle Scholar
  15. Wm. Randolph Franklin. 2005. Mass Properties of the Union of Millions of Identical Cubes. In Geometric and Algorithmic Aspects of Computer Aided Design and Manufacturing, DIMACS Series in Discrete Mathematics and Theoretical Computer Science, Ravi Janardan, Debashish Dutta, and Michiel Smid (Eds.). Vol. 67. American Mathematical Society, 329--345.Google ScholarGoogle Scholar
  16. Wm Randolph Franklin and Mohan S. Kankanhalli. 1993. Volumes From Overlaying 3-D Triangulations in Parallel. In Advances in Spatial Databases: Third Intl. Symp., SSD'93, D. Abel and B.C. Ooi (Eds.). Lecture Notes in Computer Science, Vol. 692. Springer-Verlag, 477--489. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Wm Randolph Franklin and Venkatesh Sivaswami. 1990. OVERPROP --- Calculating Areas of Map Overlay Polygons without Calculating the Overlay. In Second National Conference on Geographic Information Systems. Ottawa, 1646--1654.Google ScholarGoogle Scholar
  18. Wm Randolph Franklin, Venkateshkumar Sivaswami, David Sun, Mohan Kankanhalli, and Chandrasekhar Narayanaswami. 1994. Calculating the Area of Overlaid Polygons Without Constructing the Overlay. Cartography and Geographic Information Systems (April 1994), 81--89.Google ScholarGoogle Scholar
  19. Michael Gousie and W. Randolph Franklin. 2003. Constructing a DEM from Grid-based Data by Computing Intermediate Contours. In GIS 2003: Proceedings of the Eleventh ACM International Symposium on Advances in Geographic Information Systems (November 7--8), Erik Hoel and Phillippe Rigaux (Eds.). New Orleans, 71--77. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. Michael B. Gousie and Wm. Randolph Franklin. 2005. Augmenting Grid-based Contours to Improve Thin Plate DEM Generation. Photogrammetric Engineering & Remote Sensing 71, 1 (2005), 69--79.Google ScholarGoogle ScholarCross RefCross Ref
  21. Topraj Gurung and Jarek Rossignac. 2009. SOT: compact representation for tetrahedral meshes. In 2009 SIAM/ACM Joint Conference on Geometric and Physical Modeling. 79--88. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Mei-Cheng Hu and James D. Foley. 1985. Parallel Processing Approaches to Hidden Surface Removal in Image Space. Computers and Graphics 9, 3 (1985), 303--317.Google ScholarGoogle ScholarCross RefCross Ref
  23. Mohan Kankanhalli. 1990. Techniques for Parallel Geometric Computations. Ph.D. Dissertation. Electrical, Computer, and Systems Engineering Dept., Rensselaer Polytechnic Institute. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. Mohan Kankanhalli and Wm Randolph Franklin. 1995. Area and Perimeter Computation of the Union of a Set of Iso-Rectangles in Parallel. J.Parallel Distrib. Comput. 27, 2 (June 1995), 107--117. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Julian Kates-Harbeck, Samuel Totorica, Jonathan Zrake, and Tom Abel. 2015. Simplex-in-Cell Technique for Collisionless Plasma Simulations. Retrieved 2016-11-15 from https://arxiv.org/pdf/1506.07207.pdfGoogle ScholarGoogle Scholar
  26. Large Geometric Model Archive 2016. GIT Large Geometric Model Archive. Retrieved 2016-02-02 from http://www.cc.gatech.edu/projects/large_models/Google ScholarGoogle Scholar
  27. Salles Viana Gomes Magalhães. 2015. An Efficient Algorithm for Computing the Exact Overlay of Triangulations. In Proc. 2nd ACM SIGSPATIAL PhD Workshop (SIGSPATIAL PhD '15). ACM, New York, NY, USA, Article 3, 4 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Salles V. G. Magalhães, Marcus V. A. Andrade, W. Randolph Franklin, and Wenli Li. 2015. Fast exact parallel map overlay using a two-level uniform grid. In 4th ACM SIGSPATIAL International Workshop on Analytics for Big Geospatial Data (BigSpatial). Bellevue WA USA. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. Salles V. G. Magalhães, Marcus V. A. Andrade, W. Randolph Franklin, and Wenli Li. 2016. PinMesh -- Fast and exact 3D point location queries using a uniform grid. Computer & Graphics Journal, special issue on Shape Modeling International 2016 58 (Aug. 2016), 1--11. (online 17 May). Awarded a reproducibility stamp, http://www.reproducibilitystamp.com/. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. Salles V. G. Magalhães, Marcus V. A. Andrade, W. Randolph Franklin, Wenli Li, and Maurício Gouvêa Gruppi. 2016. Exact intersection of 3D geometric models. In Geoinfo 2016, XVII Brazilian Symposium on GeoInformatics. Campos do Jordão, SP, Brazil.Google ScholarGoogle Scholar
  31. Mark McKenney, Roger Frye, Mathew Dellamano, Kevin Anderson, and Jeremy Harris. 2016. Multi-core parallelism for plane sweep algorithms as a foundation for GIS operations. GeoInformatica (2016), 1--24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  32. Chandrasekhar Narayanaswami. 1991. Parallel Processing for Geometric Applications. Ph.D. Dissertation. Electrical, Computer, and Systems Engineering Dept., Rensselaer Polytechnic Institute. UMI no. 92-02201. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. C. Narayanaswami and Wm Randolph Franklin. 1991. Determination of mass properties of polygonal CSG objects in parallel. Internat. J. Comput. Geom. Appl. 1, 4 (1991), 381--403.Google ScholarGoogle ScholarCross RefCross Ref
  34. Chandrasekhar Narayanaswami and Wm Randolph Franklin. 1991. Determination of Mass Properties of Polygonal CSG Objects in Parallel. In Proc.Symposium on Solid Modeling Foundations and CAD/CAM Applications, Joshua Turner (Ed.). ACM/SIGGRAPH, 279--288. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. Nvidia. 2015. CUDA Toolkit Documentation. Retrieved 2016-02-23 from http://docs.nvidia.com/cuda/thrust/Google ScholarGoogle Scholar
  36. Joseph O'Rourke. 1998. Computational Geometry in C (2 ed.). Cambridge University Press. Google ScholarGoogle ScholarDigital LibraryDigital Library
  37. Junjun Pan, Junxuan Bai, Xin Zhao, Aimin Hao, and Hong Qin. 2014. Dissection of Hybrid Soft Tissue Models Using Position-based Dynamics. In Proceedings of the 20th ACM Symposium on Virtual Reality Software and Technology (VRST '14). ACM, New York, NY, USA, 219--220. Google ScholarGoogle ScholarDigital LibraryDigital Library
  38. F. P. Preparata and M. I. Shamos. 1985. Computational Geometry: An Introduction. Texts and Monographs in Computer Science Springer-Verlag. Google ScholarGoogle ScholarDigital LibraryDigital Library
  39. Satish Puri and Sushil K. Prasad. 2013. Efficient Parallel and Distributed Algorithms for GIS Polygonal Overlay Processing. In Proceedings of the 2013 IEEE 27th International Symposium on Parallel and Distributed Processing Workshops and PhD Forum (IPDPSW '13). IEEE Computer Society, Washington, DC, USA, 2238--2241. Google ScholarGoogle ScholarDigital LibraryDigital Library
  40. John H. Reif and Sandeep Sen. 1988. An Efficient Output-sensitive Hidden-Surface Removal Algorithm and its Parallelization. In Proc. Fourth Annual Symposium on Computational Geometry. 193--200. Google ScholarGoogle ScholarDigital LibraryDigital Library
  41. Jarek Rossignac, Alla Safonova, and Andrzej Szymczak. 2001. 3D Compression Made Simple: Edgebreaker on a Corner-Table. In Shape Modeling International. 278--283. Google ScholarGoogle ScholarDigital LibraryDigital Library
  42. Vadim Shapiro. 2014. Geometric Modeling of Material (Micro)Structures (Presentation). In GDM 2014 Workshop: Geometric Design Facing Manufacturing. http://www.cs.technion.ac.il/gdm2014/Presentations/GDM2014_shapiro.pdf (retrieved 2016-11-15).Google ScholarGoogle Scholar
  43. Diane Souvaine. 2008. Line Segment Intersection Using a Sweep Line Algorithm. Retrieved 2016-11-13 from http://www.cs.tufts.edu/comp/163/notes05/seg_intersection_handout.pdfGoogle ScholarGoogle Scholar
  44. Stanford Scanning Repository 2016. The Stanford 3D Scanning Repository. Retrieved 2016-02-02 from http://graphics.stanford.edu/data/3Dscanrep/Google ScholarGoogle Scholar
  45. Laura Toma, Lars Arge, and J. S. Vitter. 2001. I/O--efficient algorithms for problems on grid-based terrains. ACM J. Experimental Algorithmics 6 (2001). Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. Christian Trott and Glen Hansen. 2018. Kokkos C++ Performance Portability Programming EcoSystem. Retrieved 2018-10-05 from https://github.com/kokkosGoogle ScholarGoogle Scholar
  47. Eric W. Weisstein. 2016. Math World--A Wolfram Web Resource. http://mathworld.wolfram.com/.Google ScholarGoogle Scholar
  48. Chee-Keng Yap. 1987. What can be Parallelized in Computational Geometry?. In International Workshop on Parallel Algorithms and Architectures. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Data Structures for Parallel Spatial Algorithms on Large Datasets (Vision paper)

          Recommendations

          Comments

          Login options

          Check if you have access through your login credentials or your institution to get full access on this article.

          Sign in
          • Published in

            cover image ACM Conferences
            BigSpatial '18: Proceedings of the 7th ACM SIGSPATIAL International Workshop on Analytics for Big Geospatial Data
            November 2018
            68 pages
            ISBN:9781450360418
            DOI:10.1145/3282834

            Copyright © 2018 ACM

            Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

            Publisher

            Association for Computing Machinery

            New York, NY, United States

            Publication History

            • Published: 6 November 2018

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article
            • Research
            • Refereed limited

            Acceptance Rates

            Overall Acceptance Rate32of58submissions,55%

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader