Tags: spcl/dace
Tags
Extract FPGA code generation to separate repository (#2252) The DaCe FPGA backend will be supported out-of-tree. This PR extracts the capabilities to a separate repository: https://github.com/spcl/dace-fpga This PR also reduces circular imports and encourages more object-oriented design for code generation.
Extract FPGA code generation to separate repository (#2252) The DaCe FPGA backend will be supported out-of-tree. This PR extracts the capabilities to a separate repository: https://github.com/spcl/dace-fpga This PR also reduces circular imports and encourages more object-oriented design for code generation.
Add Type Change Utility Function (#2149) This change adds a new DaCE Pass that can replace one simple DaCe dtype with another. This change was successfully tested on a complex ICON sdfg. Here is a sample usage: ``` import dace import numpy as np from dace.transformation import pass_pipeline as ppl from dace.transformation.passes.type_change import TypeChange N = dace.symbol('N') @dace.program def simple(a: dace.float64[N], b: dace.float64[1]): for i in range(N): a[i] = a[i] * 2.0 + b[0] sdfg = simple.to_sdfg() tc = TypeChange(dace.float64, dace.float32) type_change_pipeline = ppl.Pipeline([tc]) print("Pipeline created") results = type_change_pipeline.apply_pass(sdfg, {}) print(results) # {'TypeChange': 6} A = np.ones(10, dtype=np.float32) B = np.ones(1, dtype=np.float64) sdfg(A, B, N=10) print(A) ``` --------- Co-authored-by: Philipp Schaad <[email protected]>
Control Flow Raising (#1657) This PR mainly provides control flow raising passes for the new intrinsic control flow constructs (Branches and loops) in SDFGs. In addition to raising, the state and control flow reachability passes have been adjusted to faithfully work with the intrinsic control flow constructs. Along with the raising and reachability passes, a few important bugfixes and a general cleanup is included in the PR, but no other functionality is changed.
PreviousNext