Skip to content
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[next][dace]: lowering of scan to SDFG #1776

Merged
merged 219 commits into from
Jan 20, 2025
Merged
Show file tree
Hide file tree
Changes from 207 commits
Commits
Show all changes
219 commits
Select commit Hold shift + click to select a range
4c41f02
[wip] start adding sdfg convertible Program for dace-fieldview
DropD Oct 29, 2024
481af34
add SDFGConvertible Program replacement to dace_fieldview
DropD Nov 19, 2024
ad0a7b2
improve generate_sdfg args, remove old Program replacement
DropD Nov 19, 2024
307b537
Merge branch 'main' into gtir-sdfg-convertible
DropD Nov 19, 2024
7c4d197
turn auto_optimize back on in __sdfg__
DropD Nov 19, 2024
3c56151
disable `auto_opt` once again in `__sdfg__`
DropD Nov 19, 2024
c5b4c43
support only CUDA device type in dace_fieldview Program
DropD Nov 20, 2024
835c115
[wip] bring back extra sdfg attributes for halo placement
DropD Nov 22, 2024
c126cb2
partially add halo exchange helper attrs with tests
DropD Nov 26, 2024
0b90583
add dace/gt4py type parsing crosscheck
DropD Nov 26, 2024
8c1f9f4
Merge branch 'main' into gtir-sdfg-convertible
DropD Nov 26, 2024
77c250b
fix dace_fieldview.program tests
DropD Nov 26, 2024
f8ec8f5
refactor extractors and remove debuginfo warning
DropD Dec 3, 2024
5831591
Merge branch 'main' into gtir-sdfg-convertible
DropD Dec 3, 2024
df1847a
scan - working draft
edopao Nov 29, 2024
89ca8f7
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Dec 3, 2024
f22eb64
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Dec 4, 2024
c26d906
Improve utility functions for tuples
edopao Dec 4, 2024
ba0a9ba
Fix for empty field domain
edopao Dec 4, 2024
ac7acf8
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Dec 4, 2024
877d81e
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Dec 4, 2024
8baf6d1
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Dec 4, 2024
784b573
Add exclusive if_ in dataflow
edopao Dec 5, 2024
de9c9de
Better handling of isolated nodes
edopao Dec 5, 2024
14e66e8
Fix field offset in nested SDFG context
edopao Dec 6, 2024
fcfaf72
fix problem with dereferencil of 1D vertical fields inside scan
edopao Dec 6, 2024
79204ee
generalize previous fix to all scan input fields
edopao Dec 6, 2024
5fe461a
minor edit
edopao Dec 6, 2024
a4bde3a
fix out-of-bound access
edopao Dec 6, 2024
c75a8e4
Better handling of isolated nodes
edopao Dec 6, 2024
6f72cac
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Dec 6, 2024
397acae
exclude scan tests on dace backend with optimizations
edopao Dec 6, 2024
acf5ac0
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Dec 6, 2024
a706b27
fix pre-commit
edopao Dec 6, 2024
c22cfc8
fix doctest
edopao Dec 6, 2024
59e0ed5
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Dec 6, 2024
792a8eb
temporarily disable one optimize transformation
edopao Dec 9, 2024
61985f7
Revert "temporarily disable one optimize transformation"
edopao Dec 9, 2024
aa236a2
fix for scan output stride
edopao Dec 10, 2024
9bdc75b
fix previous commit
edopao Dec 10, 2024
746f9d8
converto scalar to array on nsdfg output
edopao Dec 10, 2024
0d894ff
Revert "converto scalar to array on nsdfg output"
edopao Dec 11, 2024
440a474
Split handling of let-statement lambdas from stencil body
edopao Dec 11, 2024
500590b
minor edit
edopao Dec 11, 2024
c56e062
Merge remote-tracking branch 'origin/dace-refact-lambda' into dace-gt…
edopao Dec 12, 2024
5d5992a
use dace auto-optimize on gpu
edopao Dec 12, 2024
c167def
Merge remote-tracking branch 'origin/dace-gtir-scan' into dace-gtir-scan
edopao Dec 12, 2024
eb17345
Revert "use dace auto-optimize on gpu"
edopao Dec 12, 2024
8b163da
make map_strides recursive
edopao Dec 12, 2024
d15213a
rename module alias
edopao Dec 13, 2024
55811dc
review comments
edopao Dec 13, 2024
8f0e515
Merge remote-tracking branch 'origin/dace-refact-lambda' into dace-gt…
edopao Dec 13, 2024
f01d291
add test case for sdfg transformation
edopao Dec 13, 2024
62e1648
review comments (1)
edopao Dec 16, 2024
72e8830
review comments (2)
edopao Dec 16, 2024
39aeb20
Merge branch 'dace-refact-lambda' into dace-gtir-scan
edopao Dec 16, 2024
de4a80e
review comments (2)
edopao Dec 16, 2024
45f9927
Merge remote-tracking branch 'origin/main' into dace-refact-lambda
edopao Dec 16, 2024
3fe538b
Merge remote-tracking branch 'origin/dace-refact-lambda' into dace-gt…
edopao Dec 16, 2024
ee62266
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Dec 16, 2024
4b0ac60
Propagate strides to nested SDFG when changing transient strides
edopao Dec 16, 2024
f701605
rename function
edopao Dec 16, 2024
a19019f
fix bug
edopao Dec 16, 2024
c03492c
fix previous commit
edopao Dec 16, 2024
310fcce
Test commit
edopao Dec 16, 2024
4b487ea
propagate strides also to destination nested SDFG
edopao Dec 16, 2024
4cf66e7
fix previous commit (skip scalar inner nodes)
edopao Dec 16, 2024
ab7ee5f
fix - do not call free_symbols on int stride
edopao Dec 17, 2024
82cf491
run simplify before gpu transformations
edopao Dec 17, 2024
a0dbea5
undo renaming graph -> state
edopao Dec 17, 2024
9128ffb
increase slurm timeout to 20 minutes
edopao Dec 17, 2024
f940c4e
increase slurm timeout to 30 minutes
edopao Dec 17, 2024
cc0777b
minor edit
edopao Dec 17, 2024
462f3c5
exclude test_ternary_scan from gpu tests
edopao Dec 17, 2024
19c76ad
work around gtir transforms requiring connectivity tables
DropD Dec 17, 2024
d9218b6
This are the changes Edoardo implemented to fix some issues in the op…
edopao Dec 17, 2024
9d7e722
First rework.
philip-paul-mueller Dec 18, 2024
1ddd6fe
Updated some commenst.
philip-paul-mueller Dec 18, 2024
b2931a5
Merge remote-tracking branch 'origin/main' into gtir-sdfg-convertible
edopao Dec 18, 2024
fd7f472
Add visitor fir Literal node
edopao Dec 18, 2024
95e0007
I want to ignore register, not only consider them.
philip-paul-mueller Dec 18, 2024
f1b7a3f
There was a missing `not` in the check.
philip-paul-mueller Dec 18, 2024
50ad620
Had to update the propagation, to also handle aliasing.
philip-paul-mueller Dec 18, 2024
983022c
In the function for looking for top level accesses the `only_transien…
philip-paul-mueller Dec 18, 2024
e7b1afb
Small reminder of the future.
philip-paul-mueller Dec 18, 2024
df7bd0c
Forgot to export the new SDFG stuff.
philip-paul-mueller Dec 18, 2024
71e54fd
Fix for attribute rename itir -> gtir on latest main
edopao Dec 18, 2024
363ab59
Had to update function for actuall renaming of the strides.
philip-paul-mueller Dec 18, 2024
9c19d32
Added a todo to the replacement function.
philip-paul-mueller Dec 18, 2024
9cad1f7
Added a first test to the propagation function.
philip-paul-mueller Dec 18, 2024
99030d0
Fix error on main (is_field_allocator_factory_for -> is_field_allocat…
edopao Dec 18, 2024
2700f53
Modified the function that performs the actuall modification of the s…
philip-paul-mueller Dec 19, 2024
a20d3c0
Updated some tes, but more are missing.
philip-paul-mueller Dec 19, 2024
b5ff462
Subset caching strikes again.
philip-paul-mueller Dec 19, 2024
d326d3b
It seems that the explicit handling of one dimensions is not working.
philip-paul-mueller Dec 19, 2024
252f348
The test must be moved bellow.
philip-paul-mueller Dec 19, 2024
49f8172
The symbol is also needed to be present in the nested SDFG.
philip-paul-mueller Dec 19, 2024
2d6dfc0
Fixed a bug in determining the free symbols that we need.
philip-paul-mueller Dec 19, 2024
6124c6d
Updated the propagation code for the symbols.
philip-paul-mueller Dec 19, 2024
45bcf97
Addressed Edoardo's changes.
philip-paul-mueller Dec 19, 2024
23b0baa
Updated how we get the type of symbols.
philip-paul-mueller Dec 19, 2024
ff05880
New restriction on the update of the symbol mapping.
philip-paul-mueller Dec 19, 2024
43ec33c
Updated the tests, now also made one that has tests for the symbol ma…
philip-paul-mueller Dec 19, 2024
d43153a
Fixed two bug in the stride propagation function.
philip-paul-mueller Dec 19, 2024
2e82bd5
Added a test that ensures that the dependent adding works.
philip-paul-mueller Dec 19, 2024
07e6a5c
Changed the default of `ignore_symbol_mapping` to `True`.
philip-paul-mueller Dec 19, 2024
4bf145b
Added Edoardo's comments.
philip-paul-mueller Dec 19, 2024
2b03bb4
Removed the creation of aliasing if symbol tables are ignored.
philip-paul-mueller Dec 20, 2024
40c225d
Added a test that shows that `ignore_symbol_mapping=False` does produ…
philip-paul-mueller Dec 20, 2024
419a386
Updated the description.
philip-paul-mueller Dec 20, 2024
cc9801b
Applied Edoardo's comment.
philip-paul-mueller Dec 20, 2024
360baae
Added a todo from Edoardo's suggestions.
philip-paul-mueller Dec 20, 2024
f2396c4
Merge remote-tracking branch 'philip/dace-gtir-better-strides' into d…
edopao Dec 20, 2024
a0c37cb
minor edit
edopao Dec 20, 2024
45c69ec
Merge branch 'main' into dace-gtir-scan
edopao Dec 20, 2024
0f9043b
fix for missing symbols in nested sdfg
edopao Dec 20, 2024
059a448
wip - fix iterator tests
edopao Dec 20, 2024
439ec43
cover addition in the program tests
DropD Jan 6, 2025
7853745
Merge branch 'gtir-sdfg-convertible-node-visitor-regtest' into gtir-s…
DropD Jan 6, 2025
6c6a4e3
clean up dace-program tests and extractors
DropD Jan 6, 2025
f799bc0
cleanup orchestration tests
DropD Jan 6, 2025
b8fe277
disable tests with sparse fields
edopao Jan 7, 2025
0dd4b4e
disable unsupported features
edopao Jan 8, 2025
2d3238c
fix for if_ lowering
edopao Jan 8, 2025
aec47c8
lowering of tuple_deref
edopao Jan 8, 2025
1f68857
lowering of tuple iterators
edopao Jan 8, 2025
c20728d
allow tuple fields with different size
edopao Jan 8, 2025
d9691a8
Merge remote-tracking branch 'origin/main' into dace-gtir-iterator_view
edopao Jan 8, 2025
312e69c
add scan test marker
edopao Jan 8, 2025
65b4dd2
undo lowering of scan
edopao Jan 8, 2025
61b06b3
Minor edit based on review comments
edopao Jan 8, 2025
62a2a80
ignore atlas tests
edopao Jan 8, 2025
aa9f999
undo scan-related change
edopao Jan 8, 2025
7508e03
Minor edit based on review comments
edopao Jan 8, 2025
43f2e40
fix
edopao Jan 8, 2025
de203f9
Revert "undo scan-related change"
edopao Jan 8, 2025
ab11d77
fix previous commits
edopao Jan 8, 2025
7329c4b
update test skip list
edopao Jan 9, 2025
fab8288
fix gtir dace tests (add tuple symbols)
edopao Jan 9, 2025
46322ac
undo extra change
edopao Jan 9, 2025
2c1156b
remove support for tuple iterator
edopao Jan 9, 2025
ac24404
fix test marker
edopao Jan 9, 2025
a414eba
move 2 nested function definitions to separate helper functions
edopao Jan 9, 2025
311c74e
import changes from dace-gtir-iterator_view
edopao Jan 9, 2025
015f69c
edit test markers
edopao Jan 9, 2025
f05a730
edit test markers
edopao Jan 9, 2025
2363b62
Revert "edit test markers"
edopao Jan 9, 2025
fd1462d
Merge remote-tracking branch 'origin/main' into dace-gtir-iterator_view
edopao Jan 10, 2025
8deaa16
Merge remote-tracking branch 'origin/dace-gtir-iterator_view' into da…
edopao Jan 10, 2025
9eb0c20
fix merge conflicts
edopao Jan 10, 2025
90a2378
fix merge conflicts (1)
edopao Jan 10, 2025
db94493
remove wrong assert
edopao Jan 10, 2025
76168b3
Merge remote-tracking branch 'origin/dace-gtir-iterator_view' into da…
edopao Jan 10, 2025
f7b18b3
edit code comments
edopao Jan 10, 2025
87b5bd5
add tuple_get
edopao Jan 10, 2025
4914de5
Merge remote-tracking branch 'origin/dace-gtir-iterator_view' into da…
edopao Jan 10, 2025
415e251
better symbol mapping for scan nested SDFG
edopao Jan 13, 2025
d93a387
better symbol mapping for lambda nested SDFG
edopao Jan 13, 2025
9cacbb8
Merge branch 'dace-gtir-scan' into dace-gtir
edopao Jan 13, 2025
2bb102a
Merge remote-tracking branch 'DropD/gtir-sdfg-convertible' into dace-…
edopao Jan 13, 2025
3afb1cb
Fix attribute dtype error
edopao Jan 13, 2025
9c884e3
Fix attribute dtype error
edopao Jan 13, 2025
a002d35
Merge remote-tracking branch 'DropD/gtir-sdfg-convertible' into dace-…
edopao Jan 13, 2025
3ecaab4
fix mypy error
edopao Jan 13, 2025
88efd17
Merge remote-tracking branch 'DropD/gtir-sdfg-convertible' into dace-…
edopao Jan 13, 2025
8976caa
fix stride problem
edopao Jan 13, 2025
5e454f8
Merge remote-tracking branch 'DropD/gtir-sdfg-convertible' into dace-…
edopao Jan 13, 2025
411f607
fix stride problem (1)
edopao Jan 13, 2025
d89383d
fix stride problem (1)
edopao Jan 13, 2025
d2bfe3d
Merge remote-tracking branch 'DropD/gtir-sdfg-convertible' into dace-…
edopao Jan 13, 2025
678b782
Revert "add tuple_get"
edopao Jan 13, 2025
eaaee4e
Merge remote-tracking branch 'origin/main' into dace-gtir-iterator_view
edopao Jan 13, 2025
d4599d2
address review comments
edopao Jan 13, 2025
4a82810
fix
edopao Jan 13, 2025
81b5fd3
fix subset num_elements
edopao Jan 13, 2025
26ccb89
Merge remote-tracking branch 'origin/main' into dace-gtir
edopao Jan 13, 2025
2cc84c8
address review comments (1)
edopao Jan 14, 2025
3518624
Merge branch 'dace-gtir-iterator_view' into dace-gtir
edopao Jan 14, 2025
ea44598
address review comments (1)
edopao Jan 14, 2025
981f2c7
fix test markers
edopao Jan 14, 2025
6035ccc
address review comments (2)
edopao Jan 14, 2025
007c260
Merge remote-tracking branch 'origin/dace-gtir-iterator_view' into da…
edopao Jan 14, 2025
e3fce81
fix previous commit
edopao Jan 14, 2025
bed7e0d
fix previous commit
edopao Jan 14, 2025
86953b8
fix test markers
edopao Jan 14, 2025
d3ede1c
fix: remove unused connectivities
edopao Jan 14, 2025
c724df6
Merge remote-tracking branch 'origin/dace-gtir-remove_unused_connecti…
edopao Jan 14, 2025
c86e345
better tuple symbol tree
edopao Jan 15, 2025
3529964
better tuple symbol tree
edopao Jan 15, 2025
974d643
rename sym_tree to symbol_tree
edopao Jan 15, 2025
6f4ff65
helper function add_temp_array
edopao Jan 15, 2025
46879b7
make _visit_if_branch_result separate function
edopao Jan 15, 2025
de83a3b
Merge remote-tracking branch 'origin/dace-gtir-iterator_view' into da…
edopao Jan 15, 2025
cd48985
address review comment
edopao Jan 15, 2025
4437108
fix doc test
edopao Jan 15, 2025
70ba0c8
Merge remote-tracking branch 'origin/dace-gtir-iterator_view' into da…
edopao Jan 15, 2025
fd266cb
Merge remote-tracking branch 'origin/dace-gtir-remove_unused_connecti…
edopao Jan 15, 2025
d7671a7
address review comment (1)
edopao Jan 15, 2025
85ff971
Merge remote-tracking branch 'origin/dace-gtir-iterator_view' into da…
edopao Jan 15, 2025
849a75a
Merge remote-tracking branch 'origin/dace-gtir' into dace-gtir-scan
edopao Jan 15, 2025
1e6a873
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Jan 15, 2025
733816a
fix rebase conflicts
edopao Jan 15, 2025
a734b71
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Jan 15, 2025
06e9420
fix pre-commit
edopao Jan 15, 2025
4e57834
fix test marker
edopao Jan 15, 2025
b875eca
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Jan 16, 2025
13d7ca1
address review comment
edopao Jan 16, 2025
d9717ac
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Jan 17, 2025
ca246d6
address review comments
edopao Jan 17, 2025
bb458cd
Add support for ListType as scan output
edopao Jan 17, 2025
7b992d9
move scan to separate module
edopao Jan 17, 2025
a8740f2
adopt tree output
edopao Jan 17, 2025
637e419
add code comments
edopao Jan 17, 2025
ec7bc92
fix fieldop data type
edopao Jan 17, 2025
b0007bb
Revert "fix fieldop data type"
edopao Jan 17, 2025
0327050
Merge remote-tracking branch 'origin/main' into dace-gtir-scan
edopao Jan 19, 2025
831b368
address review comments
edopao Jan 20, 2025
e7822b6
address review comments (1)
edopao Jan 20, 2025
970ed97
fix previous commit
edopao Jan 20, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -252,6 +252,7 @@ markers = [
'uses_reduction_with_only_sparse_fields: tests that require backend support for with sparse fields',
'uses_scalar_in_domain_and_fo',
'uses_scan: tests that uses scan',
'uses_scan_1d_field: that that uses scan on 1D vertical field',
'uses_scan_in_field_operator: tests that require backend support for scan in field operator',
'uses_scan_in_stencil: tests that require backend support for scan in stencil',
'uses_scan_without_field_args: tests that require calls to scan that do not have any fields as arguments',
Expand Down
Loading
Loading