Arcpy среда параллельной обработки

22

Недавно я обнаружил настройку среды параллельной обработки в ArcGIS (она должна быть новой для 10.1), однако нет никаких упоминаний о том, какие инструменты предназначены для использования этой настройки среды. ESRI предоставляет один пример того, как установить среду параллельной обработки:

import arcpy

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

Мои вопросы очень тесно связаны, поэтому я включаю их в одну ветку:

  1. Какие инструменты геообработки поддерживают среду параллельной обработки?
  2. Являются ли эти локальные или глобальные настройки (например, можете ли вы установить среду в начале скрипта Arcpy, и все соответствующие инструменты будут соответствовать настройкам среды после этого?
  3. Большинство инструментов геообработки уже настроены на: arcpy.env.parallelProcessingFactor = "100%"по умолчанию?
Аарон
источник
Хороший пикап @Aaron
om_henners

Ответы:

12

Новое в 10.1 SP1, из того, что я могу найти.

Это не полный ответ, но быстрый поиск исправленных «ошибок» выявил ссылки на наборы данных мозаики и инструменты геостатистического анализа. У последнего есть тема об этом. Примечание: хотя кажется, что эта тема не имеет прямого отношения к фактору параллельной обработки.

Редактировать для пояснения: многие геостатистические инструменты теперь поддерживают параллельную обработку, но не поддерживают «коэффициент параллельной обработки», который доступен для некоторых других инструментов геообработки.

В справочнике инструментов должен быть указан «коэффициент параллельной обработки» в разделе сред, если этот параметр поддерживается. Набор инструментов кэширования плитки также поддерживает этот фактор.

mkennedy
источник
2
Могу подтвердить geostatistical analyst tools- сегодня попробовал мастер и на многих шагах успешно использовал 8 ядер .. наконец-то! =)
Радек
5
resources.arcgis.com/en/help/main/10.1/index.html#//… перечислите инструменты, которые поддерживают параллельную обработку дляgeostatistical analyst tools
Mapperz
1
Любопытно, основывается ли реализация на Python, C ++ или .NET?
blah238
resources.arcgis.com/en/help/main/10.2/#/… Из «Что нового» для ArcGIS 10.2 Spatial Analyst: «Многоядерная поддержка была добавлена ​​в следующие инструменты: Переклассификация, Взвешенное наложение, Взвешенная сумма, Зональная статистика, Зональная статистика в виде таблицы. "
DPierce
3

Я просто искал это сам и нашел некоторые ответы:

1) Какие инструменты геообработки учитывают среду параллельной обработки?

Я не смог найти исчерпывающий список из них, кроме тех, которые указаны в другом ответе, но если вы посмотрите на ссылку на инструмент геообработки, вы сможете определить этот инструмент по списку сред, которые он поддерживает, внизу. Если он перечисляет «Коэффициент параллельной обработки» в средах, то он поддерживает его. В противном случае это не так. Это не исчерпывающий список, но, по крайней мере, он позволяет вам искать поддержку определенного инструмента.

2) Являются ли эти локальные или глобальные настройки (например, можете ли вы установить среду в начале скрипта Arcpy, и все соответствующие инструменты будут соответствовать настройкам среды после этого?

Насколько я понимаю, он действует как другие среды и может быть и тем, и другим. Если вы установили его на самом инструменте геообработки при его запуске, он локальный, но если вы установите его в средах ArcMap или Arcpy, он будет глобальным для этого сеанса. Я могу ошибаться в этом, но я не читал ничего, указывающего, что он ведет себя по-другому.

3) Для большинства инструментов геообработки уже установлено значение: arcpy.env.parallelProcessingFactor = "100%" по умолчанию?

Нет, не обязательно, по крайней мере. Это не указано. На этой странице справки для ArcGIS 10.2 по умолчанию каждый инструмент определяет свое количество. Учитывая другую документацию на этой странице, в которой указаны оптимальные настройки для каждого инструмента в зависимости от того, привязан ли он к диску или связан с процессором, я могу предположить, что он может варьироваться между использованием одного ядра и созданием во много раз большего количества потоков, чем процессоров. Они этого не говорят, но это моя интерпретация заданного ими значения по умолчанию.

nicksan
источник