There is a newer version of the record available.

Published August 28, 2021 | Version v0.20.1
Software Open

diku-dk/futhark: 0.20.1

Description

Added
  • The #[trace] and #[break] attributes now replace the trace and break functions (although they are still present in slightly-reduced but compatible form).

  • The #[opaque] attribute replaces the opaque function, which is now deprecated.

  • Tracing now works in compiled code, albeit with several caveats (mainly, it does not work for code running on the GPU).

  • New wasm and wasm-multicore backends by Philip Lassen. Still very experimental; do not expect API stability.

  • New intrinsic type f16, along with a prelude module f16. Implemented with hardware support where it is available, and with f32-based emulation where it is not.

  • Sometimes slightly more informative error message when input of the wrong type is passed to a test program.

Removed Changed
  • The ! function in the integer modules is now called not.

  • ! is now builtin syntax. You can no longer define a function called !. It is extremely unlikely this affects you. This removes the last special-casing of prefix operators.

  • A prefix operator section (i.e. (!)) is no longer permitted (and it never was according to the grammar).

  • The offset parameter for the "raw" array creation functions in the C API is now int64_t instead of int.

Fixed
  • i64.abs was wrong for arguments that did not fit in an i32.

  • Some f32 operations (**, abs, max) would be done in double precision on the CUDA backend.

  • Yet another defunctorisation bug (#1397).

  • The clz function would sometimes exhibit undefined behaviour in CPU code (#1415).

  • Operator priority of prefix - was wrong - it is now the same as ! (#1419).

  • futhark hash is now invariant to source location as well as stable across OS/compiler/library versions.

  • futhark literate is now much better at avoiding unnecessary recalculation.

  • Fixed a hole in size type checking that would usually lead to compiler crashes (#1435).

  • Underscores now allowed in numeric literals in test data (#1440).

  • The cuda backend did not use single-pass segmented scans as intended. Now it does.

Files

diku-dk/futhark-v0.20.1.zip

Files (2.0 MB)

Name Size Download all
md5:a5051c7da99eb08f9c501ea82f2785fb
2.0 MB Preview Download

Additional details

Related works