Load-balancing in high performance GIS: Declustering polygonal maps

  • Shashi Shekhar
  • Sivakumar Ravada
  • Vipin Kumar
  • Douglas Chubb
  • Greg Turner
Part of the Lecture Notes in Computer Science book series (LNCS, volume 951)


A high performance geographic information system (GIS) is a central component of many real-time applications of spatial decision making. The GIS may contain gigabytes of geometric and feature data (e.g. location, elevation, soil type etc.) stored on a hierarchy of memory devices and represented as grids and large sets of polygons. The data is often accessed via range queries (like polygon clipping) and map-overlay queries. For example, a real-time visualization program retrieves the visible subset of GIS data around the current location of simulator via range queries fetching a million points/second. Such performance can be obtained only with major advances in exploiting parallelism and spatial database techniques within the computational geometry algorithms for range and map-overlay queries.

In this paper, we develop and experimentally evaluate data partitioning and load-balancing techniques for range queries in High Performance GIS. We implement static and dynamic load-balancing methods on a distributed memory parallel machine (Cray T3D) for polygon data, and we experimentally evaluate their performance. Preliminary results show that both the static and dynamic load-balancing methods are necessary for improved performance but are not sufficient by themselves. We propose a new quasi-dynamic load-balancing (QDLB) technique which achieves better load-balance and speedups than traditional methods. On 16 processors, we are able to process range queries in under 0.12 seconds for a map with 329,296 edges, where the range query size is 20–25% of the total area of the map. We are also able to achieve average speedups of 14 on 16 processors.


High Performance Geographic Information Systems Range Query Declustering Methods Load-Balancing Polygon Clipping 


Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.


  1. 1.
    A. Aggarwal, B. Chazelle, L. Guibas, C. O'Dunlaing, and C. Yap. Parallel computational geometry. In Proceedings of the 25th IEEE Symposium on Foundations of Computer Science, pages 468–477, 1985.Google Scholar
  2. 2.
    S. G. Akl and K. A. Lyons. Parallel Computational Geometry. Prentice Hall, Englewood Cliffs, 1993.Google Scholar
  3. 3.
    M. P. Armstrong, C. E. Pavlik, and R. Marciano. Experiments in the measurement of spatial association using a parallel supercomputer. Geographical Systems, 1:267–288, 1994.Google Scholar
  4. 4.
    M. J. Atallah and M. T. Goodrich. Efficient plane sweeping in parallel. In Proceedings of the 2nd Annual ACM Symposium on Computational Geometry, pages 216–225, 1986.Google Scholar
  5. 5.
    J. L. Bentley and T. A. Ottmann. Algorithms for reporting and counting geometric intersections. IEEE Transactions on Computers, c-28(9):643–647, 1979.Google Scholar
  6. 6.
    T. Bially. Space-filling curves: Their generation and their application to bandwidth reduction. IEEE Transactions on Information Theory, IT-15(6):658–664, 1969.Google Scholar
  7. 7.
    G. Brunetti, A. Clematis, B. Falcidieno, A. Sanguineti, and M. Spagnuolo. Parallel processing of spatial data for terrain characterization. In Proceedings of the ACM workshop in GIS, 1994.Google Scholar
  8. 8.
    H. C. Du and J. S. Sobolewski. Disk allocation for product files on multiple disk systems. ACM Transactions on Database Systems, 7, March 1982.Google Scholar
  9. 9.
    W. R. Franklin et al. Uniform grids: A technique for intersection detection on serial and parallel machines. In Proceedings of the 9th Conference on Automated Cartography, American Society for Photogeometry and Remote Sensing, pages 100–109, 1989.Google Scholar
  10. 10.
    M. T. Fang, R. C. T. Lee, and C. C. Chang. The idea of declustering and its applications. In Proceedings of the International Conference on Very Large Databases, 1986.Google Scholar
  11. 11.
    Z. Fang, P.-C. Yew, P. Tang, and C.-Q.Zhu. Dynamic processor self-scheduling for general parallel nested loops. In Proceedings of the International Conference in Parallel Processing, August 1987.Google Scholar
  12. 12.
    A. Guttman. R-trees: A dynamic index structure for spatial searching. In Proceedings of the SIGMOD Conference, pages 47–57, 1984.Google Scholar
  13. 13.
    E. G. Hoel and H. Samet. Data parallel r-tree algorithms. In Proceedings of the 1993 International Conference on Parallel Processing, 1993.Google Scholar
  14. 14.
    E. G. Hoel and H. Samet. Performance of data-parallel spatial operations. In Proceedings of the 20th VLDB Conference, pages 156–167, 1994.Google Scholar
  15. 15.
    S. F. Hummel, E. Schonberg, and L. E. Flynn. Factoring — a method for scheduling parallel loops. Communications of the ACM, pages 35–90, August 1992.Google Scholar
  16. 16.
    H. V. Jagadish. Linear clustering of objects with multiple attributes. In Proceedings of the 1990 ACM SIGMOD International Conference on Management of Data, pages 332–342, 1990.Google Scholar
  17. 17.
    I. Kamel and C. Faloutsos. Parallel r-trees. In Proceedings of the International Conference on Management of Data, ACM SIGMOD, 1992.Google Scholar
  18. 18.
    C. Kruskal and A. Weiss. Allocating independent subtasks on parallel processors. IEEE Transactions on Software Engineering, pages 1001–1016, October 1985.Google Scholar
  19. 19.
    V. Kumar, A. Grama, A. Gupta, and G. Karypis. Introduction to Parallel Computing: Design and Analysis of Algorithms. The Benjamin/Cummings Publishing Company, Inc., 1994.Google Scholar
  20. 20.
    V. Kumar, A. Grama, and V. N. Rao. Scalable load balancing techniques for parallel computers. Journal of Distributed Computing, 7, March 1994.Google Scholar
  21. 21.
    Y. Liang and B. A. Barsky. An analysis and algorithm for polygon clipping. Communications of the ACM, 26, November 1983.Google Scholar
  22. 22.
    D. R. Liu and S. Shekhar. A similarity graph-based approach to declustering problem and its applications. In Proceedings of the Eleventh International Conference on Data Engineering, IEEE, 1995.Google Scholar
  23. 23.
    J. Nievergelt, H. Hinterberger, and K. D. Sevcik. The grid file: An adaptable, symmetric multikey file structure. ACM Transactions on Database Systems, 9(1):38–71, 1984.Google Scholar
  24. 24.
    F. P. Preparata and M. I. Shamos. Computational Geometry. Springer-Verlag, New York, 1985.Google Scholar
  25. 25.
    B. R. Vatti. A generic solution to polygon clipping. Communications of the ACM, 35, July 1992.Google Scholar
  26. 26.
    F. Wang. A parallel intersection algorithm for vector polygon overlay. IEEE Computer Graphics & Applications, March 1993.Google Scholar
  27. 27.
    Y. Zhou, S. Shekhar, and M. Coyle. Disk allocation methods for parallelizing grid files. In Proceedings of the Tenth International Conference on Data Engineering, IEEE, 1994.Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 1995

Authors and Affiliations

  • Shashi Shekhar
    • 1
  • Sivakumar Ravada
    • 1
  • Vipin Kumar
    • 1
  • Douglas Chubb
    • 2
  • Greg Turner
    • 3
  1. 1.Computer Science Dept.University of MinnesotaMinneapolis
  2. 2.Research and Technology DivisionU.S. Army CECOM, RDEC., IEWDUSA
  3. 3.Information Processing BranchArmy Research LaboratoryUSA

Personalised recommendations