github libxsmm/libxsmm 1.14
Version 1.14

latest releases: 1.old_kernelapi_rip, 1.libxsmm_dnn_rip, 1.eol...
4 years ago

This release brings notable fixes and improvements (see below) prior to merging our reworked DL backend. This version is likely the last release of our 1.x series. For the upcoming major release of LIBXSMM, the API remains compatible for core functionality except for the DL domain. Even for the DL domain, there are only API adjustments rather than big changes (straight forward or minor).

THANK YOU FOR YOUR CONTRIBUTION: jewillco, yurivict, antoscha, breuera, jeremylt, HiSPEET, and legrosbuffle. We would like to thank all direct contributors as well as people who informally spent effort and time for this Open Source software!

INTRODUCED

  • Native PROCEDURE types for generic 3-/6-arguments (arity) functions (Fortran interface).
  • Intercepted memory allocation for applications based on LIBXSMM's scratch memory.
  • LIBXSMM guarantees non-NULL kernels for valid requests since several versions.
    Empty shape requests are now considered valid (SMM, MCOPY, and TCOPY).
  • Getting Started section added to documentation ("Hello LIBXSMM").

IMPROVEMENTS / CHANGES

  • Termination statistic now distinct SMMs and degenerated SMMs (GEMV).
  • Support Immintrin-debug (https://github.com/intel/Immintrin-debug).
  • Emit warning if compiler support only enables low-resolution timers.
  • Support PGI Compiler based on GNU GCC settings; still some issues.
  • Generally enable ISA extensions even if not permitted by OS (XSAFE).
  • Enforce AVX-512 under OSX i/Mac Pro (OSX: XSAFE/ZMM disabled).
  • VTUNE=0: disables profiler support (even if detected and SYM=1).
  • Memory info to handle foreign pointers (not allocated by library).
  • Scratch memory allocation: avoid unnecessary warning (verbose).
  • Improved scratch memory allocation statistics (watermark, etc.).
  • Implemented exit-handler for Fortran programs using STOP.
  • Avoid compiler warnings previously suppressed by flags.
  • Make: only permit matching static/shared library builds.
  • Accommodate Clang based compiler under Windows.
  • Improved RNG performance for very short sequences.
  • Updated Visual Studio projects and setup (VS2019).
  • Updated and revised documentation.
  • Updated articles and applications.
  • Contribution #355 incorporated.
  • Lowered dispatch overhead.

FIXES

  • Fixed issue (2019/02/24) dispatching compiler-generated code (affected SpMDM and DL).
  • Fixed casting literal -1 to an unsigned integer when 64-bits were intended.
  • Resolved issue related to structure alignment/padding/copy (CCE).
  • Potentially invalid kernel cache with concurrently finalized library.
  • Potentially treated non-OpenMP lock as OpenMP lock.
  • Avoid potentially recursive locking at termination.
  • Fixed potential hang with header-only.
  • Incorrect LDC for intercepted GEMV.
  • Issues fixed: #340 and #347.

Don't miss a new libxsmm release

NewReleases is sending notifications on new releases.