-
Notifications
You must be signed in to change notification settings - Fork 13
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
Update OOPS and use reduce obs space
filter action for pre-filters
#209
Update OOPS and use reduce obs space
filter action for pre-filters
#209
Conversation
Also, this PR might have some conflicts with #207 since I did some slight reorganization of |
@SamuelDegelia-NOAA PR #207 was merged. You can go ahead to resolve the conflicts. Also, as this PR updates one submodule component, it is expected to run the mpas-jedi and fv-jedi ctests as well. Thanks! |
The change also affects the EnVar case, do we also see improvements in the computing time and memory usage? |
rrfs-test/CMakeLists.txt
Outdated
file(GLOB bl_FILES "${src_casedir}/*.*BL") | ||
file(COPY ${bl_FILES} DESTINATION ${casedir}) | ||
file(COPY ${src_yaml}/${case}.yaml DESTINATION ${casedir}) | ||
file(CREATE_LINK ${src_casedir}/data ${casedir}/data SYMBOLIC) |
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.
It looks like we get extra indentations from the latest commit. Are these changes expected?
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.
Yeah not sure what happened there. I used Github to do the merge conflicts and it added some weird spacing. Just fixed it, I think.
@SamuelDegelia-NOAA, just as an FYI, I already made these updates in my current PR #188. I've actually removed the Temporal Thinning filter and moved the order of this time window filter closer to the top. Will this cause conflicts when trying to merge both PRs? |
@delippi Probably so, maybe that means we should focus on getting yours merged first since it has been up longer. Also, I didn't realize you removed the temporal thinning filter - what was the reason for that? The bulk of the speed up here is from applying |
@guoqing-noaa There are slight improvements but not as much as the GETKF. Runtime for Also, I'll start running the mpas-jedi and fv3-jedi tests. |
Thanks! It may reduce more when we assimilate more observations, such as satellite radiance, or radar data, etc |
Definitely! |
The temporal thinning I found was just not providing the correct observation counts... even when setting it to Here are some side by side comparisons just for reference: |
Thanks @delippi for the explanation, it makes sense why you removed the temporal thinning now since its a much better match with GSI without it. For the |
Seven mpas-jedi tests fail after updating OOPS, all due to
These are the same failures discussed here and are expected. FV3-JEDI tests are ongoing - there are quite a lot...! |
@SamuelDegelia-NOAA, can you run |
@delippi For the data we currently have staged in |
I was wondering if that might be why your ctests are failing with a float mismatch error? I'm finding that it doesn't fail either way for FV3, but it does fail for MPAS when those data types are ints. |
Oh I gotcha. I think these mpasjedi tests are failing primarily because the test references are built with CRTMv3, while we are using v2.4 in RDASApp. |
@spanNOAA Could you review this PR? |
@delippi "the temporal thinning" is not the filter that remove duplicated surface obs. right? We want to remove the duplicated surface observation. |
For the fv3-jedi tests, the same seven tests fail as documented here, all due to the reference mismatch error. So again, to be expected and not a problem.
|
This PR addresses #122 and #189 to update the OOPS hash to a recent commit that fixes the
reduce obs space
filter action for GETKF. This filter action is then added to temporal thinning and time window filters in each of the obs-space yamls underrrfs-test/validated_yamls/templates/obtype_config
.Using this filter action allows us to remove observations from memory that do not pass any pre-filters. These obs will thus not be output to the hofx file and do not get read in during the GETKF solver. This significantly speeds up the GETKF solver by about ~66% (see table below). Memory usage for the GETKF solver is also reduced by ~35%.
The only ctests affected by this change are the GETKF observer and solver. Their reference files are thus updated here as well.
Table for impact of
reduce obs space
:ctest output on Hera: