Skip to content

PMDK Version 1.9

Compare
Choose a tag to compare
@pbalcer pbalcer released this 03 Jul 09:40
· 1902 commits to master since this release
1.9
1926ffb

This release:

  • Switches the default instruction set for memcpy, memmove and memset
    implementations on x86 to AVX512, and introduces numerous performance
    improvements for those operations on AVX and SSE2 fallback paths.
  • Optimizes transactional allocations in libpmemobj by avoiding one
    extraneous cache miss and reducing the amount of work required to perform
    a reservation.
  • Introduces a new API in libpmemobj, pmemobj_tx_set_failure_behavior,
    that enables the application to control the behavior of aborting
    transactions.
  • Improves performance of pool creation on Windows by avoiding expensive
    physical page allocation during file allocation.
  • Stabilizes support for ppc64.

Other changes:

  • pmem: mem[cpy|set] optimization when eADR is available
  • obj: detect msync failures in non-pmem variants of mem[cpy|move|set]

Notable bug fixes:

  • core: fix Last_errormsg_get when NO_LIBPTHREAD is defined
  • pmem: read Unsafe Shutdown Count from region instead of interleave set
  • common: fix deep_flushes failing on platforms that don't need them
  • pmem: fix data cache flush on ppc64
  • obj: fix run allocated recalculation