23 votos

Entorno de procesamiento paralelo Arcpy

Hace poco descubrí el Procesamiento paralelo en ArcGIS (esto debe ser nuevo en 10.1), sin embargo, no se menciona qué herramientas están diseñadas para utilizar esta configuración de entorno. ESRI proporciona un ejemplo de cómo configurar el entorno de procesamiento paralelo:

import arcpy

# Use half of the cores on the machine.
arcpy.env.parallelProcessingFactor = "50%" 

Mis preguntas están muy relacionadas, así que las incluyo en el mismo hilo:

  1. ¿Qué herramientas de geoprocesamiento respetan el entorno de procesamiento paralelo?
  2. ¿Se trata de ajustes locales o globales (es decir, se puede configurar el entorno al principio de la secuencia de comandos Arcpy y todas las herramientas respectivas se todas las herramientas respectivas?
  3. La mayoría de las herramientas de geoprocesamiento ya están configuradas para: arcpy.env.parallelProcessingFactor = "100%" ¿por defecto?

14voto

Shog9 Puntos 340

Nuevo en 10.1 SP1, por lo que he podido encontrar.

No es una respuesta completa, pero una búsqueda rápida de "errores" corregidos reveló referencias a conjuntos de datos en mosaico y herramientas de análisis geoestadístico. Esta última tiene un tema al respecto. Nota: aunque parece que este tema no está directamente relacionado con el factor de procesamiento paralelo.

Editar para aclarar: Muchas herramientas geoestadísticas ahora soportan el procesamiento paralelo, pero no parecen soportar el "factor de procesamiento paralelo" que está disponible para ciertas otras herramientas en geoprocesamiento.

La referencia de una herramienta debe indicar "factor de procesamiento paralelo" en la sección de entornos si la configuración está soportada. El conjunto de herramientas de caché de azulejos también parece admitir el factor.

5voto

rAndy Puntos 327

Yo mismo estaba buscando esto y encontré algunas de las respuestas:

  1. Qué herramientas de geoprocesamiento respetan el procesamiento paralelo paralelo?

No he podido encontrar una lista completa de ellos aparte de los vinculados en la otra respuesta, pero si nos fijamos en la referencia de la herramienta de geoprocesamiento, se puede saber para esa herramienta por la lista de entornos que soporta cerca de la parte inferior de la página de documentación de la herramienta. Si aparece "Factor de procesamiento paralelo" en la lista de entornos, es que es compatible. De lo contrario, no. No es una lista exhaustiva, pero al menos te permite buscar la compatibilidad con una herramienta concreta.

  1. ¿Son estos ajustes locales o globales (es decir, se puede establecer el entorno al principio del script Arcpy y todas las respectivas herramientas respetarán la configuración del entorno a partir de entonces?

Según tengo entendido, actúa como otros entornos y puede ser ambas cosas. Si lo configuras en la propia herramienta de geoprocesamiento al ejecutarla, es local, pero si lo configuras en entornos ArcMap o entornos arcpy, entonces es global a esa sesión. Podría estar equivocado en esto, pero no he leído nada que indique que se comporta de manera diferente.

  1. ¿La mayoría de las herramientas de geoprocesamiento ya están configuradas con: arcpy.env.parallelProcessingFactor = "100%"por defecto?

No. No necesariamente, al menos. No está especificado. Según esto página de ayuda para ArcGIS 10.2, el valor por defecto es dejar que cada herramienta determine su cantidad. Dada la otra documentación de esa página que indica los ajustes óptimos para cada herramienta en función de si está vinculada al disco o a la CPU, me imagino que puede variar entre utilizar un solo núcleo y crear muchos más hilos que CPU. No lo dicen, pero esa es mi interpretación del valor por defecto que especifican.

0voto

Michael Sparks Puntos 411

El procesamiento paralelo que me funcionó es cero por defecto:

import arcpy
arcpy.env.parallelProcessingFactor = "0%"

arcpy.sa.Fill(<raster>)

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X