Abstract


Implementing Parallel Geoprocessing using Python
Track: Application Development
Authors: Michael Mannion, Katie Irwin, Darrell Robertson

The proliferation of affordable multicore, multiprocessor hardware has made available to ArcGIS Desktop users unprecedented computing power, yet GIS analysts frequently lack the tools to effectively leverage that hardware for large geoprocessing tasks. While building multithreaded applications using ArcObjects is often unfeasible for non-developers, the approachable and increasingly ubiquitous Python framework offers a rich set of standard modules that support multiple threads and processes. As more GIS analysts add Python to their skill set, many users have practical access - for the first time - to true parallel processing capabilities for light customization. This presentation describes an approach for using Python to coordinate parallel geoprocessing from an ArcToolbox script tool. Using the NAVFAC geodatabase replication deployment as a case study, topics include an overview of Python's parallel processing features, technical considerations for using ArcGIS in a parallel environment, and recommendations for adapting lessons learned to other environments.