Skip to content

Releases: zbjornson/node-bswap

v3.0.0

18 Sep 01:23
Compare
Choose a tag to compare

Full Changelog: v2.0.2...v3.0.0

  • e8223f5 Migrate to node-api for compatibility across runtimes. bswap now supports Bun.
  • 51a0191 Improve performance of arrays that are not aligned to the size of the SIMD register.
  • 252b895 Fix building on ARM
  • 51a0191 Simplify code.
  • Refresh benchmarks with recent compilers, runtimes and CPU.

v2.0.2

08 Jul 23:16
Compare
Choose a tag to compare

Fixed

v2.0.1 *don't use*

08 Jul 21:26
Compare
Choose a tag to compare

Fixed

  • 27ac942 Package .mjs files in npm tarball.

v2.0.0 *don't use*

08 Jul 21:21
Compare
Choose a tag to compare

Changed

  • 63420bb Breaking: switch to ES Modules
  • d5ed025 Update to nan v2.16.0

Added

  • 45c5443 Support BigInt64Array and BigUint64Array

v1.3.2

27 Apr 02:28
Compare
Choose a tag to compare

Maintenance:

  • 38df097 Bump nan
  • 38df097 Set CI to test with Node 8, 10 and 12
  • 9f72385 Shrink tarball size (specify files)

v1.3.1

09 Jan 08:49
Compare
Choose a tag to compare

Changed

v1.3.0

16 Nov 02:20
Compare
Choose a tag to compare

Improved

  • cbb3c9e Replace the cpuid.exe util used to detect CPU features on Windows with init-time CPU dispatch.
  • cbb3c9e Add compiler flags required for AVX2 support on macOS.
  • cbb3c9e Refactor vector code again. (Nicer and fixes a performance issue on Linux with 16-bit types.)
  • cbb3c9e Silence safe warnings from GCC8.
  • 6b33db7 Modernize JS syntax. (Officially: Node.js v6 is required.)
  • 6cadeea Condense readme.
  • 084dd30 Improve perf in several cases with GCC by aligning loops to 32-B boundaries.
  • d030c66 Improve perf across the board by unrolling loops 8x.
  • b2ed0fb Improve perf of unaligned arrays.

Added

  • cbb3c9e Export the ISE used ("SSSE3", "AVX2", "AVX512" or "NEON").
  • 6b4a168 AVX512 implementation. This is disabled by default because it is slower than the AVX2 version.
  • 4c00148 ARM NEON implementation.

v1.2.1

23 Oct 21:28
Compare
Choose a tag to compare

Improved

  • 1e9a3c8 Align data to 32B instead of 64B before beginning SIMD execution. (There's no reason to align to 64, it just causes slower execution.)
  • ffe778a Deps: nan ^2.4.0 -> ^2.11.1

v1.2.0

01 Apr 01:58
Compare
Choose a tag to compare

Improved

  • b5cf276 Use AVX2 instructions when available (automatically detected). Improves performance significantly (45-65%, see benchmark diffs).
  • b5cf276 Align vector operations to cache line. Improves swapping of unaligned arrays significantly (~45%).
  • b5cf276 Rewritten to avoid the giant macro.

v1.1.6

27 Sep 00:02
Compare
Choose a tag to compare

Bugfixes

  • Fix build failure in some cases. (Explicitly include header. Not sure why building without it ever works?)