Skip to content

Time Ranges#21

Merged
siligam merged 8 commits into
mainfrom
feat/calendar
Jul 24, 2024
Merged

Time Ranges#21
siligam merged 8 commits into
mainfrom
feat/calendar

Conversation

@pgierz
Copy link
Copy Markdown
Member

@pgierz pgierz commented Jul 17, 2024

Provides functionality for dealing with dates and ranges of dates in the pymorization tool.

Closes #15

@pgierz pgierz added old feature Features of the old SEAMORE Ruby Implementation backend labels Jul 17, 2024
@pgierz pgierz self-assigned this Jul 17, 2024
@pgierz pgierz linked an issue Jul 17, 2024 that may be closed by this pull request
@pgierz
Copy link
Copy Markdown
Member Author

pgierz commented Jul 23, 2024

This provides the calendar functionality. Note that there is no explicit inclusion into the default pipeline yet, since we still need to design how to handle the time axis.

@pgierz pgierz marked this pull request as ready for review July 23, 2024 11:55
@pgierz pgierz requested review from mandresm and siligam July 23, 2024 12:17
Copy link
Copy Markdown
Contributor

@siligam siligam left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

looks good to be merged

@siligam siligam merged commit 8f4b498 into main Jul 24, 2024
@pgierz pgierz deleted the feat/calendar branch May 19, 2025 14:00
JanStreffing added a commit that referenced this pull request May 20, 2026
Both tiers hit TIMEOUT in cli40 due to multiple save_dataset operations
contending on the global HDF5 write lock with no progress at heartbeat
#87+ over 3h. Sequence in lrcs_seaice_3:
  siarea 176×, siextent 89×, sisnmass 87×, sfdsi 87×, sihc 86×, sidmasstrany 86×
veg_land_1 wedged on vegHeight/dgw/tslsi/esn at heartbeat #21.

Wall-vs-Σsave analysis (cli40 successful shards) shows these two tiers
already run nearly serially under lock contention:
  lrcs_seaice_4: ratio 1.18× (12% wall-time penalty if forced serial)
  lrcs_seaice_2: 1.8×
Forcing strict serial eliminates the wedge with negligible cost.

3D-heavy tiers (cap7_atm 4.1×, core_ocean 3.7×, extra_atm 1.8×) genuinely
need parallel saves to stay inside 3h walltime, so they are NOT
modified.

Mechanism: every pipeline in the two yamls now declares
  throttle_group: <tier>_serial
and the pycmor: section adds
  throttle_caps:
    <tier>_serial: 1
which caps in-flight rules of that group at 1 per batch.

For lrcs_seaice this also subsumes the previous oifs_regrid cap=2 (which
was set for driver-RSS, not the lock); cap=1 trivially satisfies it.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

backend old feature Features of the old SEAMORE Ruby Implementation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Calculate output time ranges

2 participants