Page MenuHomeSolus

Update zstd to 1.3.4
ClosedPublic

Authored by mfossen on Mar 31 2018, 2:34 AM.

Details

Summary
  • asynchronous compression by default for zstd cli
    • effectively improves throughput by 20-30%, depending on compression level and underlying I/O performance
  • general speed improvements
  • faster compression levels
    • triggered using --fast[=<number>] command
  • Miscellaneous
    • perf: faster speed (especially decoding speed) on recent cpus (haswell+)
    • perf: much better performance associating --long with multi-threading, by @terrelln
    • perf: better compression at levels 13-15
    • cli : asynchronous compression by default, for faster experience (use --single-thread for former behavior)
    • cli : smoother status report in multi-threading mode
    • cli : added command --fast=#, for faster compression modes
    • cli : fix crash when not overwriting existing files, by Pádraig Brady (@pixelb)
    • api : nbThreads becomes nbWorkers : 1 triggers asynchronous mode
    • api : compression levels can be negative, for even more speed
    • api : ZSTD_getFrameProgression() : get precise progress status of ZSTDMT anytime
    • api : ZSTDMT can accept new compression parameters during compression
    • api : implemented all advanced dictionary decompression prototypes
    • build: improved meson recipe, by Shawn Landden (@shawnl)
    • build: VS2017 scripts, by @HaydnTrigg
    • misc: all /contrib projects fixed
    • misc: added /contrib/docker script by @gyscos
Test Plan
Installed v1.3.4, tried compressing using new --fast= option and using unzstd to recover original files

Diff Detail

Repository
R3331 zstd
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.

Event Timeline

mfossen created this revision.Mar 31 2018, 2:34 AM
mfossen requested review of this revision.Mar 31 2018, 2:34 AM
mfossen updated this revision to Diff 6557.Mar 31 2018, 3:56 AM

Build the manpages too

joebonrichie accepted this revision.Mar 31 2018, 4:25 PM
joebonrichie added a subscriber: joebonrichie.

LGTM. Given the lack of concise changelog from upstream, and we haven't updated this in a while, i'm fine with copypasta'd changelog. I'll do the required rebuilds for this locally before pushing this.

This revision is now accepted and ready to land.Mar 31 2018, 4:25 PM
This revision was automatically updated to reflect the committed changes.