Skip to content

Releases: intel/yask

Version 4.00.03

22 Nov 22:08
9662357
Compare
Choose a tag to compare
  • Some bug fixes for APIs and API tests,
  • New API yk_env::finalize(), which is also called automatically upon env destruction.

Version 4.00.00

08 Nov 22:59
48800a5
Compare
Choose a tag to compare

Major changes include

  • GPU offloading via OpenMP device support.
  • Default compiler and run-time libraries are now from Intel(R) oneAPI HPC kit.
  • Changes to tiling hierarchy.
  • More efficient data packing and unpacking during halo exchanges.

See README.md and tutorial for more information on these and other changes.

Version 3.05.07

20 Oct 19:52
Compare
Choose a tag to compare

Small changes:

  • Improve support for LLVM-based Intel compilers. Compile with YK_CXX='mpiicpc -cxx=icpx'.
  • Update copyright to 2021.

Version 3.05.05

17 Jul 19:03
Compare
Choose a tag to compare

Some internal restructuring. Should not affect usage, output, or performance.

Version 3.05.00

20 Apr 21:32
644c464
Compare
Choose a tag to compare

Main changes:

  • Shared-memory is now default for intra-node halo communication.
  • Improvements in AVX2 code generation.
  • Better handling of different forms of index expressions.

Version 3.04.01

01 Apr 17:56
0ce00c0
Compare
Choose a tag to compare

Main changes:

  • Update copyright for 2020.
  • Change old terms "pack" and "pass" to new term "stage".
  • Updates in OpenMP calls for icc version 19.1.1.217.

Version 3.03.00

21 Oct 23:10
9fdc2e3
Compare
Choose a tag to compare

Main changes:

  • Added ability to generate 256-bit-wide SIMD instructions using the AVX512 instruction set via "arch=avx512lo".
  • Removed some compiler warnings and cleaned up some code internally.

Version 3.02.00

22 Aug 16:31
c81392e
Compare
Choose a tag to compare

Major changes:

  • Added option to set time for each auto-tuner trial.
  • Improved compiler-option settings in Makefile, enabling clang++.

Version 3.01.01

09 Jul 17:13
834e950
Compare
Choose a tag to compare

Most significant bits:

  • Moved setup of debug output from yk_solution to yk_env, ensuring that debug output from new_solution() is captured properly.
  • Relocated hosting of API docs and tutorial to http://intel.github.io/yask/api/html/index.html.
  • Fix some potential issues with topological sort of equations in compiler.

Version 3.00.00

21 Jun 22:07
dfc9285
Compare
Choose a tag to compare

Major release:

  • The old (v1 and v2) internal DSL that used undocumented types such as
    SolutionBase and GridValue and undocumented macros such as
    MAKE_GRID was replaced with an expanded version of the documented YASK
    compiler API. Canonical v2 DSL code should still work using the
    Soln.hpp backward-compatibility header file. To convert v2 DSL code
    to v3 format, use the ./utils/bin/convert_v2_stencil.pl utility.
    Conversion is recommended.

  • For both the compiler and kernel APIs, all uses of the term "grid" were
    changed to "var". (Historically, early versions of YASK allowed only
    variables whose elements were points on the domain grid, so the terms
    were essentially interchangeable. Later, variables became more flexible.
    They could be defined with a subset of the domain dimensions, include
    non-domain or "miscellaneous" indices, or even be simple scalar values,
    so the term "grid" to describe any variable became inaccurate. This
    change addresses that contradiction.) Again, backward-compatibility
    features in the API should maintain functionality of v2 DSL and kernel
    code.

  • The default strings used in the kernel library and filenames to identify
    the targeted architecture were changed from Intel CPU codenames to
    [approximate] instruction-set architecture (ISA) names "avx512", "avx2",
    "avx", "knl", "knc", or "intel64". The YASK targets used in the YASK
    compiler were updated to be consistent with this list.

  • Many smaller changes and fixes.