NOAA-OWP / inundation-mapping

Flood inundation mapping and evaluation software configured to work with U.S. National Water Model.
Other
94 stars 28 forks source link

[21pt] Improve Performance for Post-Processing tools #1095

Open RobHanna-NOAA opened 6 months ago

RobHanna-NOAA commented 6 months ago

The overall performance of the post processing steps is pretty slow, even though it has some multi proc in some parts. That section has slowly growing and the cumulate of them is now a bit of a problem. Consider analyzing each tool used in post processing to review performance. I suspect adding multi-threading in parts could have major performance gains. Research required.

Updated July 11:

Update: Aug 6, 2024

Related Issue cards are:

mluck commented 6 months ago

One thing that might be good to add here is a check to see if fim_process_unit_wb.sh completes successfully or not before running fim_post_processing.sh on a HUC. I think the way it is now, fim_post_processing.sh is run even if fim_process_unit_wb.sh has failed for that HUC.

RobHanna-NOAA commented 6 months ago

Yes... that is true. It does assume that at least one HUC passed. We do try to isolate each fim_process_unit_wb to pass/fail at will so they can be run in any form of a parallelized system (bash parallel or AWS). There is no easy way for a parallized fim_process_unit_wb to tell bash that it passed or failed. While not pretty.. that is why we have bash code that scans log directories looking for HUC errors and puts them in the unit_errors.log file (or similar name)