We essentially continue our work on the DaCe optimizer. The current state is as follows:
15_to_28
: Currently cleaned up by Hannes, however, according to Christoph the corrector is kind of done, while the predictor not.
Giacomo has started with it, but unclear if he continues.29_to_37
: Is currently handled by Christoph no EAT known.39_to_60
: Very near its completion, currently handled by Ioannis.The work would be pretty straight forward from what we have done before. However, it was suggested that the stencils are first cleaned up, before new stencils are analyzed. We consider this as a dependency or even a task in the scope of this project, however, we do not handle it.
A list of standing issues in DaCe and/or GT4Py can be found here. In previous cycle this was part of the respective shaping document but it was now decided that it should become its own document.
Something that has become urgent is the n_lev
issue, which is caused is related to the promotion of a Scalar
to a symbol
on an InterstateEdge
, however, we are working on.
As long as it takes.
Uncountable.
Failing verification
dy_15_to_28_predictor
calculate_nabla2_and_smag_coefficients_for_vn
apply_diffusion_to_theta_and_exner
is the same.apply_diffusion_to_theta_and_exner
DaCe transformations
dy_41_to_60_corrector
SDFG where the same map is split between 1:14
and 14:80
(issue originates from the pattern shown below around next_w
)
next_w
copies in 41_to_60_corrector
/39_to_60_predictor
30_to_38
to see if there's anything to improve
Other performance aspects
15_to_28
ConstantSubstitution
for AccessNode
s as well30_to_38
39_to_60
41_to_60_corrector
in a single fieldop
next_w
and vertical_mass_flux
need to be written for one extra level
timeloop
tests in icon4py
39_to_60_predictor
in a single fieldop
n_lev
if it's set from the gtx.program
gtx.program
and then to the gtx.fieldop
symbolic expressions
VerticalMapFusion
check if there are cases where we can fuse maps that are before/after an AccessNode that has overlapping edges