Esta é uma pergunta bastante geral. Só estou pensando em quais dicas e truques os programadores de GIS usaram para acelerar os scripts arqueados que você importa na caixa de ferramentas e executa.
Eu trabalho quase todos os dias escrevendo pequenos scripts para ajudar usuários não GIS no meu escritório a processar dados GIS. Descobri que o processamento do ArcGIS 10.0 em geral é mais lento que o 9.3.1 e às vezes fica ainda mais lento ao executar um script python.
Vou listar um exemplo específico de um script que leva mais de 24 horas para ser executado. É um loop que tabula a área de uma varredura em um buffer para cada forma no buffer. O buffer tem cerca de 7000 formas. Não acredito que deva durar tanto tempo. UMA
while x <= layerRecords:
arcpy.SetProgressorLabel("Tabulating Row: " + str(x) + " of " + str(ELClayerRecords))
arcpy.SelectLayerByAttribute_management(Buff,"NEW_SELECTION", "Recno = " + str(x)) # Selecting the record
TabulateArea(Buff, "Recno", MatGRID, "VALUE", ScratchWS + "/tab" + str(z) +".dbf", nMatGRIDc) # Tabulate the area of the single row
arcpy.AddMessage (" - Row: " + str(x) + " completed")
x = x + 1
z = z + 1
Antes que alguém diga, eu executei a área tabular em todo o buffer, mas produz erros se executado em mais de um registro. É uma ferramenta defeituosa, mas eu tenho que usá-la.
De qualquer forma, se alguém tiver alguma idéia de como otimizar ou acelerar esse script, seria muito apreciado. Caso contrário, você tem algum truque de aceleração para python, quando usado no ArcGIS?