-
Notifications
You must be signed in to change notification settings - Fork 6
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
Offline driver initialisation refactor continued (cable_user%MetType) #498
Offline driver initialisation refactor continued (cable_user%MetType) #498
Conversation
I won't have time to move the remaining occurrences of
|
@SeanBryan51 I know you are having issues testing all the changes but have you tried running benchab? The sites and the spatial runs should return identical results before and after. |
For |
Running it through benchcab now. |
It looks like I forgot to update the stubs for the serial build - but it also made me realise the build-ci currently builds only the MPI executable (due to the default value of the |
7e6a8bb
to
7a195f7
Compare
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.
Seems ok but let's see what benchcab thinks of it.
This is done as setting `cable_user%MetType = 'gpgs'` via the namelist is equivalent to setting `cable_user%MetType = 'gswp'` and `leaps = .TRUE.`.
…ser%YearEnd to cable_driver_init_gswp Note prior to this change cable_user%YearStart and cable_user%YearEnd was only initialised for the master process. This change now initialises these variables over all processes so that the start and end year values are consistent across the drivers.
7a195f7
to
2fcf258
Compare
Benchcab runs are bitwise reproducible with PBS log file:
Benchcab version:
realisations:
- repo:
git:
branch: main
- repo:
git:
branch: 425-offline-driver-initialisation-refactor-part3
modules: [
intel-compiler/2021.1.1,
netcdf/4.7.4,
openmpi/4.1.0
] Spatial (MPI) runs all execute as expected (note outputs do not reproduce as per issue #463). |
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's good for me.
Move allocation of GSWP_MID to cable_driver_init_gswp as it is gswp specific.
2fcf258
to
c78428c
Compare
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.
@SeanBryan51 I had another look and I have one suggestion and one question. Otherwise looks fine!
This change further consolidates the initialisation logic within the offline drivers (in particular logic related to
cable_user%MetType
) to remove code duplication and improve code clarity across each of the drivers (see #425, #440, #469 and #472).As part of the refactoring changes, the
cable_user%MetType = 'gpgs'
namelist parameter is deprecated as it is equivalent to settingcable_user%MetType = 'gswp'
andleaps = .TRUE.
.Type of change
Checklist
📚 Documentation preview 📚: https://cable--498.org.readthedocs.build/en/498/