Geosyntec / python-tidegates

🌊 ArcToolbox to analyze flooding due to storm surges and climate change
http://geosyntec.github.io/python-tidegates/
BSD 3-Clause "New" or "Revised" License
2 stars 5 forks source link

MemoryError when running "Evaluate all standard scenarios" in ArcMap #46

Closed HEdingfield closed 8 years ago

HEdingfield commented 8 years ago

This assumes PR #45 is merged in. Traceback:

Messages
Executing: StandardScenarios C:\Users\HEdingfield.GEOSYNTEC\Desktop\temp\MB_Cape.gdb C:\Users\HEdingfield.GEOSYNTEC\Desktop\temp\MB_Cape.gdb\dem_x04 C:\Users\HEdingfield.GEOSYNTEC\Desktop\temp\MB_Cape.gdb\ZOI GeoID output_evaluate # # # #
Start Time: Tue Nov 17 15:28:31 2015
Running script StandardScenarios...

Analyzing flood elevation: 4.0 ft (MHHW, 0)
-------------------------------------------
... (this ran fine) ...

Analyzing flood elevation: 5.0 ft (MHHW, 1)
-------------------------------------------
... (this ran fine) ...

Analyzing flood elevation: 6.0 ft (MHHW, 2)
-------------------------------------------
WorkSpace set to C:\Users\HEdingfield.GEOSYNTEC\Desktop\temp\MB_Cape.gdb
Loading DEM C:\Users\HEdingfield.GEOSYNTEC\Desktop\temp\MB_Cape.gdb\dem_x04
Processing C:\Users\HEdingfield.GEOSYNTEC\Desktop\temp\MB_Cape.gdb\ZOI polygons
Clipping DEM to extent of C:\Users\HEdingfield.GEOSYNTEC\Desktop\temp\MB_Cape.gdb\ZOI
Converting rasters to arrays
Flooding areas up to 6.0 ft

Traceback (most recent call last):
  File "H:\Dev\PyCharm Projects\python-tidegates\tidegates\toolbox.py", line 177, in execute
    self.main_execute(**params)
  File "H:\Dev\PyCharm Projects\python-tidegates\tidegates\toolbox.py", line 780, in main_execute
    **params
  File "H:\Dev\PyCharm Projects\python-tidegates\tidegates\toolbox.py", line 662, in analyze
    asMessage=True
  File "H:\Dev\PyCharm Projects\python-tidegates\tidegates\analysis.py", line 130, in flood_area
    **verbose_options
  File "H:\Dev\PyCharm Projects\python-tidegates\tidegates\utils.py", line 285, in wrapper
    return func(*args, **kwargs)
  File "H:\Dev\PyCharm Projects\python-tidegates\tidegates\utils.py", line 813, in flood_zones
    flooded_array = zones_array.copy()
MemoryError

Failed to execute (StandardScenarios).
Failed at Tue Nov 17 15:30:23 2015 (Elapsed Time: 1 minutes 51 seconds)
phobson commented 8 years ago

Turn on background geoprocessing to enable 64-bit support and report back.

image

HEdingfield commented 8 years ago

I already had this enabled exactly as your screenshot shows. I just ran it again though and it made it to 7.0 ft. but still crapped out after "Converting rasters to arrays" with a MemoryError.

phobson commented 8 years ago

closing this as its a hardware issue (for the moment).

HEdingfield commented 8 years ago

After installing 64-bit background processing, I finally stopped hitting the MemoryError. However, my computer hard froze (I assume it ran out of RAM) when I tried running it the first time about 1/3 of the way through. I rebooted and closed everything but Arc, and was able to successfully run all standard scenarios. However, it was extremely taxing on my 8 GB of RAM.

I strongly recommend noting in the docs that 64-bit background processing (i.e. the 64-bit version of Python 2.7 for ArcGIS) is required, and at least 8 GB of RAM needs to be available to actually run the scenarios.

phobson commented 8 years ago

Can you add that to the docs?

— Sent from my phone. Sorry if it's unintelligible.

On Thu, Nov 19, 2015 at 11:46 AM, HEdingfield notifications@github.com wrote:

After installing 64-bit background processing, I finally stopped hitting the MemoryError. However, my computer hard froze (after I assumed it ran out of RAM) when I tried running it the first time about 1/3 of the way through. I rebooted and closed everything but Arc, and was able to successfully run all standard scenarios. However, it was extremely taxing on my 8 GB of RAM.

I strongly recommend noting in the docs that 64-bit background processing (i.e. the 64-bit version of Python 2.7 for ArcGIS) is required, and at least 8 GB of RAM needs to be available to actually run the scenarios.

Reply to this email directly or view it on GitHub: https://github.com/Geosyntec/python-tidegates/issues/46#issuecomment-158173687