Conversation
mask_hdiff by multiplying with 0.0mask_hdiff by multiplying with 0.0
|
@havogt This one is even better for a performance comparison.
|
muellch
left a comment
There was a problem hiding this comment.
Same problem as before, makes code cleaner but might degrade performance.
This one should be a more obvious example since the mask is true only for few points.
...fusion/src/icon4py/model/atmosphere/diffusion/stencils/apply_diffusion_to_theta_and_exner.py
Outdated
Show resolved
Hide resolved
|
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:
To run test levels ignored by the default test suite (mostly simple datatest for static fields computations) you can use:
For more detailed information please look at CI in the EXCLAIM universe. |
|
cscs-ci run default |
|
cscs-ci run distributed |
muellch
left a comment
There was a problem hiding this comment.
Left one optional comment, that aside looks good!
| if apply_zdiffusion_t: | ||
| # Only where `zd_diffcoef` is not 0 to avoid loading the other fields. | ||
| # Eventually the toolchain could consider extracting a mask `zd_diffcoef != 0` if we tell gt4py that `zd_diffcoef` is static. | ||
| z_temp = where( |
There was a problem hiding this comment.
It is a bit weird that we put the where check here outside of the field operator call while in the other PR (https://github.com/C2SM/icon4py/pull/1053/changes), we put the while directly in the calculation.
There was a problem hiding this comment.
I know, but that's how @havogt wanted it ;-)
When naively translating a Fortran list to a full field, we constructed a mask instead of using the fact that we are actually initializing a weight with 0.0 in the masked-out cases.
Additionally: Remove program and a trivial test.
same as #1053 but for
mask_hdiff