-
Notifications
You must be signed in to change notification settings - Fork 29
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[1pt] PR: Cut down Alaska HUCs runtime #1327
Conversation
…into dev-runtime-ak
Interesting. I took the slowest 18 HUCs from the hand_4_5_11_1 run which was done in AWS Step functions. I made a new temp huc list using the same 18, then run it in AWS as well. Overall time dropped significantly with longest huc dropping from 10.7 hrs to 3.5. Many dropped in processing time, but some increased. I will now run another test using a full UAT list and compare it to the previous UAT run which was hand_4_5_10_0 for direct comparison. |
During a UAT set test, compared to 4.5.10.0 which was the latest UAT set, it continued to show some strange data. Not sure if it is a problem but seems odd to me. I have attached the results of both this UAT run and the previous smaller scale sets. Notes:
|
After talking to Zahra, we decided to do a special UAT run against the code for 4.5.11.1. Interesting results:
Zahra and I decided that maybe applying the fix to just Alaska Hucs is best which saw major gains with some 2 - 3 times faster. The slowest huc was 10.71 hrs to process, now down to 3.5 hrs which is perfectly acceptable in my opinion based on our AWS sTep function configuration which is not speed optimized per huc. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Code tested well. Update the PR text and Changlog for the files changed and I can approve it.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
and fix linting please. :)
All done! Thank you Rob! |
The purpose of this PR is to cut down the runtime for four Alaska HUCs (
19020104
,19020503
,19020402
, and19020602
). It significantly optimizes runtime by replacing a nested for loop, used for updating rating curve for small segments, with a vectorized process. This changes were applied only to the Alaska HUCs.As part of this PR, small modification was applied to
bridge_inundation.py
.Changes
src/add_crosswalk.py
src/delineate_hydros_and_produce_HAND.sh
tools/bridge_inundation.py
Testing
Tested for HUCS
19020104
,19020503
,19020402
, and05030104
.Deployment Plan (For developer use)
How does the changes affect the product?
Issuer Checklist (For developer use)
You may update this checklist before and/or after creating the PR. If you're unsure about any of them, please ask, we're here to help! These items are what we are going to look for before merging your code.
[_pt] PR: <description>
dev
branch (the default branch), you have a descriptive Feature Branch name using the format:dev-<description-of-change>
(e.g.dev-revise-levee-masking
)dev
branchpre-commit
hooks were run locally4.x.x.x
Merge Checklist (For Technical Lead use only)