-
Notifications
You must be signed in to change notification settings - Fork 0
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
feat: enhance common model utils with classes for implementing double buffering #602
Conversation
cscs-ci run default |
launch jenkins spack |
Pair
and named_property
classes
Pair
and named_property
classes
cscs-ci run default |
launch jenkins spack |
cscs-ci run default |
launch jenkins spack |
|
||
|
||
__all__ = [ | ||
# Classes | ||
"DoubleBuffering", | ||
"DoubleBufferingDataClassTrait", |
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.
Is that defined in _common
?
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.
No, good catch, thanks.
class PreviousStepPair(Pair[T]): | ||
current: T = Pair.first | ||
previous: T = Pair.frozen_second | ||
|
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.
So where for example in the SolveNonhydro would you use those: in that if pattern where the do no swapping I assume you would use any of those. But does it need both? Or you are adding them only as an example.
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.
NextStepPair
will be used for the double buffering of the prognostic state and PreviousStepPair
is just an example and thus it could be deleted.
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.
LGTM
cscs-ci run default |
Mandatory Tests Please make sure you run these tests via comment before you merge!
Optional Tests To run benchmarks you can use:
To run tests and benchmarks with the DaCe backend you can use:
In case your change might affect downstream icon-exclaim, please consider running
For more detailed information please look at CI in the EXCLAIM universe. |
cscs-ci run default |
… buffering (#602) Refactor and expand the model/common/utils module with simple implementation of utilities for to double-buffering like Pair. Additionally, fix the existing doctest for chainable.
Refactor and expand the
model/common/utils
module with simple implementation of utilities for to double-buffering likePair
. Additionally, fix the existing doctest forchainable
.