Skip to content

feat[next-dace]: Lowering mixed-GTIR to SDFG#2467

Draft
edopao wants to merge 53 commits into
GridTools:mainfrom
edopao:dace_mixed_ir
Draft

feat[next-dace]: Lowering mixed-GTIR to SDFG#2467
edopao wants to merge 53 commits into
GridTools:mainfrom
edopao:dace_mixed_ir

Conversation

@edopao
Copy link
Copy Markdown
Contributor

@edopao edopao commented Jan 30, 2026

We introduce a configuration option in the dace backend to run some transformations on the GTIR representation before lowering it to SDFG. The new configuration (apply_common_transform=True) is tested as a new dace backend (dace_cpu_gt).

Note: this PR includes the new DaCe gpu codegen (#2591) to remove a workaround.

@edopao edopao changed the title feat[next-dace]: Try mixed-GTIR lowering to SDFG feat[next-dace]: Lowering mixed-GTIR to SDFG May 6, 2026
@edopao
Copy link
Copy Markdown
Contributor Author

edopao commented May 6, 2026

cscs-ci run default

@edopao
Copy link
Copy Markdown
Contributor Author

edopao commented May 8, 2026

cscs-ci run default

@edopao
Copy link
Copy Markdown
Contributor Author

edopao commented May 8, 2026

cscs-ci run default

@edopao
Copy link
Copy Markdown
Contributor Author

edopao commented May 11, 2026

cscs-ci run default

edopao added a commit that referenced this pull request May 12, 2026
This PR contains 3 kinds of changes:

1. A bugfix in mapping the stride of local dimension into the nested
SDFG of if expressions.
```
inner_desc = dace.data.Array(
    dtype=arg_desc.dtype,
    shape=(arg_desc.shape[local_dim_pos],),
    strides=(arg_desc.strides[local_dim_pos],),
)
```

2. Addition of connectivities. This is needed to support the pattern
with `can_deref` expressions (not part of this PR, see #2467). After
GTIR transformations, which unroll the neighbors loops, a common pattern
in grids with skip values is `if(can_deref(a, V2E), deref(a(V2E)) + 2,
0)`.

3. Renaming of function parameters.


Blueline performance is in pair with baseline.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants