There is a newer version of the record available.

Published October 18, 2021 | Version v0.11.1

spcl/dace: DaCe 0.11.1

Description

What's Changed
  • More flexible Python frontend: you can now call functions and object methods, use fields and globals in @dace programs! Some examples:
    • There is no need to annotate called functions
    • @dataclass and general object field support
    • Loop unrolling: implicit and explicit (with the dace.unroll generator)
    • Constant folding and explicit constant arguments (with dace.constant as a type hint)
    • Debuggability: all functions (e.g. dace.map, dace.tasklet) work in pure Python as well
    • and many more features
  • NumPy semantics are followed more closely, e.g., subscripts create array views
  • Direct CuPy and torch.tensor integration in @dace program arguments
  • Auto-optimization (preview): use @dace.program(auto_optimize=True, device=dace.DeviceType.CPU) to automatically run some transformations, such as turning loops into parallel maps.
  • ARM SVE code generation support by @sscholbe (#705)
  • Support for MLIR tasklets by @Berke-Ates in (#747)
  • Source Mapping by @benibenj in https://github.com/spcl/dace/pull/756
  • Support for HBM on Xilinx FPGAs by @jnice-81 (#762)

Miscellaneous:

  • Various performance optimizations to calling @dace programs
  • Various bug fixes to transformations, code generator, and frontends

Full Changelog: https://github.com/spcl/dace/compare/v0.10.8...v0.11.1

Files

spcl/dace-v0.11.1.zip

Files (2.3 MB)

Name Size Download all
md5:a2ec6a6e46966a2fdcc76504d2053dd5
2.3 MB Preview Download

Additional details

Related works