]> git.ipfire.org Git - thirdparty/zstd.git/log
thirdparty/zstd.git
8 years agoFix dynamic libzstd symlinks 442/head
Nick Terrell [Thu, 3 Nov 2016 19:32:48 +0000 (12:32 -0700)] 
Fix dynamic libzstd symlinks

8 years agoThe static library was moved to libzstd.a
Nick Terrell [Thu, 3 Nov 2016 18:32:45 +0000 (11:32 -0700)] 
The static library was moved to libzstd.a

8 years agofix test-zstd-nolegacy
Yann Collet [Thu, 3 Nov 2016 08:11:56 +0000 (01:11 -0700)] 
fix test-zstd-nolegacy

8 years agofix zlibWrapper make test
Yann Collet [Thu, 3 Nov 2016 07:44:02 +0000 (00:44 -0700)] 
fix zlibWrapper make test

8 years agofixed make install
Yann Collet [Thu, 3 Nov 2016 05:28:37 +0000 (22:28 -0700)] 
fixed make install

8 years agofileio.c does no longer need ZSTD_LEGACY_SUPPORT, and does no longer depend on zstd_l...
Yann Collet [Thu, 3 Nov 2016 00:30:49 +0000 (17:30 -0700)] 
fileio.c does no longer need ZSTD_LEGACY_SUPPORT, and does no longer depend on zstd_legacy.h
Added : ZSTD_isFrame() in experimental section

8 years agoFix #419 : no warning when setting custom LDFLAGS
Yann Collet [Thu, 3 Nov 2016 00:02:45 +0000 (17:02 -0700)] 
Fix #419 : no warning when setting custom LDFLAGS

8 years agoFix #418 : printing selected segments in zdict debug mode can segfault with certain...
Yann Collet [Wed, 2 Nov 2016 20:57:55 +0000 (13:57 -0700)] 
Fix #418 : printing selected segments in zdict debug mode can segfault with certain pathological patterns

8 years agominor display improvement in fuzzer when nb of tests is very large 438/head v1.1.1
Yann Collet [Tue, 1 Nov 2016 18:13:22 +0000 (11:13 -0700)] 
minor display improvement in fuzzer when nb of tests is very large

8 years agoupdated man page
Yann Collet [Tue, 1 Nov 2016 01:10:32 +0000 (18:10 -0700)] 
updated man page

8 years agoupdated README, mentioning .zst suffix
Yann Collet [Mon, 31 Oct 2016 22:48:58 +0000 (15:48 -0700)] 
updated README, mentioning .zst suffix

8 years agoMerge pull request #436 from inikep/dev11
Yann Collet [Mon, 31 Oct 2016 17:41:13 +0000 (10:41 -0700)] 
Merge pull request #436 from inikep/dev11

gen-zstd-manual.sh

8 years agoadded gen-zstd-manual.sh 436/head
Przemyslaw Skibinski [Mon, 31 Oct 2016 09:51:58 +0000 (10:51 +0100)] 
added gen-zstd-manual.sh

8 years agoupdated doc/zstd_manual.html
Przemyslaw Skibinski [Mon, 31 Oct 2016 09:44:44 +0000 (10:44 +0100)] 
updated doc/zstd_manual.html

8 years agoMerge remote-tracking branch 'refs/remotes/facebook/dev' into dev11
Przemyslaw Skibinski [Mon, 31 Oct 2016 09:43:07 +0000 (10:43 +0100)] 
Merge remote-tracking branch 'refs/remotes/facebook/dev' into dev11

8 years agomore accurate default maximum window size
Yann Collet [Sat, 29 Oct 2016 10:56:45 +0000 (03:56 -0700)] 
more accurate default maximum window size

8 years agoMerge pull request #434 from terrelln/dev
Yann Collet [Sat, 29 Oct 2016 03:27:59 +0000 (20:27 -0700)] 
Merge pull request #434 from terrelln/dev

Pzstd Improvements

8 years agochanged ZBUFF_* by ZSTD_*Stream() within fullbench,
Yann Collet [Fri, 28 Oct 2016 22:17:38 +0000 (15:17 -0700)] 
changed ZBUFF_* by ZSTD_*Stream() within fullbench,
in anticipation of future deprecation of ZBUFF_*.

8 years agofixed benchmark mode typo .
Yann Collet [Fri, 28 Oct 2016 21:43:24 +0000 (14:43 -0700)] 
fixed benchmark mode typo .
added benchmark mode tests

8 years ago[pzstd] Move -I flags to PZSTD_CPPFLAGS 434/head
Nick Terrell [Fri, 28 Oct 2016 21:24:15 +0000 (14:24 -0700)] 
[pzstd] Move -I flags to PZSTD_CPPFLAGS

8 years agoupdated man page
Yann Collet [Fri, 28 Oct 2016 20:58:31 +0000 (13:58 -0700)] 
updated man page

8 years agoMerge pull request #433 from inikep/dev11
Yann Collet [Fri, 28 Oct 2016 18:47:35 +0000 (11:47 -0700)] 
Merge pull request #433 from inikep/dev11

Dev11

8 years agotest-zstd-speed.py: default timeout changed to 1800 seconds 433/head
Przemyslaw Skibinski [Fri, 28 Oct 2016 18:40:21 +0000 (20:40 +0200)] 
test-zstd-speed.py: default timeout changed to 1800 seconds

8 years agoMerge pull request #432 from inikep/dev11
Yann Collet [Fri, 28 Oct 2016 18:30:44 +0000 (11:30 -0700)] 
Merge pull request #432 from inikep/dev11

windres

8 years agoMerge pull request #430 from terrelln/exec-sequences
Yann Collet [Fri, 28 Oct 2016 17:45:05 +0000 (10:45 -0700)] 
Merge pull request #430 from terrelln/exec-sequences

ZSTD_execSequence() accepts match in last 7 bytes

8 years agotest-zstd-speed.py: converted to python3 and added "--timeout" 432/head
Przemyslaw Skibinski [Fri, 28 Oct 2016 17:24:16 +0000 (19:24 +0200)] 
test-zstd-speed.py: converted to python3 and added "--timeout"

8 years agogenerate RES files during each compilation
Przemyslaw Skibinski [Fri, 28 Oct 2016 16:15:34 +0000 (18:15 +0200)] 
generate RES files during each compilation

8 years agogenerate_res.bat moved to programs/windres
Przemyslaw Skibinski [Fri, 28 Oct 2016 11:17:35 +0000 (13:17 +0200)] 
generate_res.bat moved to programs/windres

8 years agogenerate_res moved to programs/windres
Przemyslaw Skibinski [Fri, 28 Oct 2016 11:16:06 +0000 (13:16 +0200)] 
generate_res moved to programs/windres

8 years agogenerate_res.bat: automatic detection if windres.exe is available
Przemyslaw Skibinski [Fri, 28 Oct 2016 10:20:02 +0000 (12:20 +0200)] 
generate_res.bat: automatic detection if windres.exe is available

8 years agoupdated build\VS2010\zstd\generate_res\verrsrc.h
Przemyslaw Skibinski [Fri, 28 Oct 2016 09:54:47 +0000 (11:54 +0200)] 
updated build\VS2010\zstd\generate_res\verrsrc.h

8 years agoMerge pull request #431 from terrelln/perf-regr
Yann Collet [Fri, 28 Oct 2016 03:45:52 +0000 (20:45 -0700)] 
Merge pull request #431 from terrelln/perf-regr

Fix ZSTD_execSequence() performance regression

8 years agoFix ZSTD_execSequence() performance regression 431/head
Nick Terrell [Thu, 27 Oct 2016 23:19:54 +0000 (16:19 -0700)] 
Fix ZSTD_execSequence() performance regression

Commit ae1cb3b3d07024618269b89e3421d828adfd34d9 caused the regression.
It is an instruction alignment issue, because if it is `U64 i` instead
of `U32 i`, the regression returns.  This patch fixes the regression
in gcc, but only gets some of the clang performance back.

Benchmarks:
Run on `silesia.tar`.  I only show levels 1-5 because the performance
regression was uniform across all levels.  I did one run on levels
1-19 and it looked good.

| Build | Level | Before | While | After |
|-------|-------|-------:|------:|------:|
| gcc   |     1 |  931.4 | 904.4 | 932.8 |
| gcc   |     2 |  849.1 | 822.6 | 851.2 |
| gcc   |     3 |  815.6 | 790.6 | 818.9 |
| gcc   |     4 |  794.1 | 770.7 | 798.0 |
| gcc   |     5 |  785.7 | 760.7 | 788.8 |
| clang |     1 |  705.5 | 683.2 | 693.8 |
| clang |     2 |  670.0 | 649.2 | 660.7 |
| clang |     3 |  659.6 | 639.8 | 651.4 |
| clang |     4 |  652.5 | 634.7 | 645.9 |
| clang |     5 |  646.9 | 625.5 | 637.7 |

8 years agoZSTD_initCStream() optimization : do not allocate a CDict when no dictionary used
Yann Collet [Thu, 27 Oct 2016 21:20:55 +0000 (14:20 -0700)] 
ZSTD_initCStream() optimization : do not allocate a CDict when no dictionary used

8 years agominor const added
Yann Collet [Thu, 27 Oct 2016 01:44:59 +0000 (18:44 -0700)] 
minor const added

8 years agoprint one global summary (instead of one per file)
Yann Collet [Thu, 27 Oct 2016 01:37:29 +0000 (18:37 -0700)] 
print one global summary (instead of one per file)

8 years agoadded example multiple_streaming_compression
Yann Collet [Thu, 27 Oct 2016 01:10:43 +0000 (18:10 -0700)] 
added example multiple_streaming_compression

8 years agoMerge remote-tracking branch 'refs/remotes/facebook/dev' into dev11
Przemyslaw Skibinski [Wed, 26 Oct 2016 07:39:35 +0000 (09:39 +0200)] 
Merge remote-tracking branch 'refs/remotes/facebook/dev' into dev11

8 years ago[pzstd] Fix test mode for streaming input
Nick Terrell [Wed, 26 Oct 2016 07:09:39 +0000 (00:09 -0700)] 
[pzstd] Fix test mode for streaming input

8 years agoZSTD_execSequence() accepts match in last 7 bytes 430/head
Nick Terrell [Fri, 21 Oct 2016 23:55:26 +0000 (16:55 -0700)] 
ZSTD_execSequence() accepts match in last 7 bytes

The zstd reference compressor will not emit a match in the last 7
bytes of a block.  The decompressor will also not accept a match
in the last 7 bytes.  This patch makes the decompressor accept a
match in the last 7 bytes.

8 years agoadded ZSTD_initDStream_usingDDict() .
Yann Collet [Wed, 26 Oct 2016 00:47:02 +0000 (17:47 -0700)] 
added ZSTD_initDStream_usingDDict() .
slightly optimized ZSTD_initDStream() when no dictionary .
fixed ZSTD_sizeof_CStream() .

8 years agofirst sketch for ZSTD_initCStream_usingCDict()
Yann Collet [Tue, 25 Oct 2016 23:19:52 +0000 (16:19 -0700)] 
first sketch for ZSTD_initCStream_usingCDict()

8 years agoMerge pull request #429 from inikep/btopt2
Yann Collet [Tue, 25 Oct 2016 21:48:43 +0000 (14:48 -0700)] 
Merge pull request #429 from inikep/btopt2

Btopt2

8 years agoMerge pull request #428 from inikep/dev11
Yann Collet [Tue, 25 Oct 2016 18:34:09 +0000 (11:34 -0700)] 
Merge pull request #428 from inikep/dev11

windres

8 years agoadded ZSTD_btopt2 strategy 429/head
Przemyslaw Skibinski [Tue, 25 Oct 2016 10:25:07 +0000 (12:25 +0200)] 
added ZSTD_btopt2 strategy

8 years agoWindows resources moved to programs/windres/ 428/head
Przemyslaw Skibinski [Tue, 25 Oct 2016 08:34:41 +0000 (10:34 +0200)] 
Windows resources moved to programs/windres/

8 years agoimages/ moved to doc/images/
Przemyslaw Skibinski [Tue, 25 Oct 2016 08:05:20 +0000 (10:05 +0200)] 
images/ moved to doc/images/

8 years agoMerge pull request #426 from terrelln/fixes
Yann Collet [Tue, 25 Oct 2016 06:42:26 +0000 (23:42 -0700)] 
Merge pull request #426 from terrelln/fixes

Fix various {A, M}SAN bugs

8 years agoupdated comments on context re-use
Yann Collet [Tue, 25 Oct 2016 00:22:12 +0000 (17:22 -0700)] 
updated comments on context re-use

8 years agoFix compiler narrowing warning 426/head
Nick Terrell [Mon, 24 Oct 2016 21:11:27 +0000 (14:11 -0700)] 
Fix compiler narrowing warning

8 years agoMerge remote-tracking branch 'upstream/dev' into fixes
Nick Terrell [Mon, 24 Oct 2016 20:10:13 +0000 (13:10 -0700)] 
Merge remote-tracking branch 'upstream/dev' into fixes

* upstream/dev:
  added doc\zstd_manual.html
  added contrib\gen_html
  zstd_compression_format.md moved to doc/
  Fix small bug in ZSTD_execSequence()
  improved ZSTD_compressBlock_opt_extDict_generic
  protect ZSTD_decodeFrameHeader() from invalid usage, as suggested by @spaskob
  zstd_opt.h: small improvement in compression ratio
  improved dicitonary segment merge
  use implicit rules to compile zstd_decompress.c
  detect early impossible decompression scenario in legacy decoder v0.5
  no repeat mode in legacy v0.5
  fixed invalid invocation of dictionary in legacy decoder v0.5
  fix edge case
  fix command line interpretation
  fixed minor corner case
  zstd.h: added the Introduction section
  fixed clang 3.5 warnings
  zstd.h: updated comments

8 years agoMerge pull request #425 from inikep/dev11
Yann Collet [Mon, 24 Oct 2016 18:11:40 +0000 (11:11 -0700)] 
Merge pull request #425 from inikep/dev11

Doc

8 years agoReject dictionaries with incomplete entropy tables
Nick Terrell [Thu, 20 Oct 2016 00:22:08 +0000 (17:22 -0700)] 
Reject dictionaries with incomplete entropy tables

If a dictionary specifies that a symbol has probability zero in its
`matchLength`, `literalLength`, or `offset` FSE table, but the symbol
appears when compressing input, the compressor fails.

Ensure that dictionaries support all `matchLength`, and `literalLength`
codes.  They must also support all of the `offset` codes required to
represent every possible offset that can appear in the first block.

8 years agoadded doc\zstd_manual.html 425/head
Przemyslaw Skibinski [Mon, 24 Oct 2016 14:07:53 +0000 (16:07 +0200)] 
added doc\zstd_manual.html

8 years agoadded contrib\gen_html
Przemyslaw Skibinski [Mon, 24 Oct 2016 13:59:51 +0000 (15:59 +0200)] 
added contrib\gen_html

8 years agozstd_compression_format.md moved to doc/
Przemyslaw Skibinski [Mon, 24 Oct 2016 13:58:07 +0000 (15:58 +0200)] 
zstd_compression_format.md moved to doc/

8 years agoMerge pull request #423 from terrelln/exec-seq-patch
Yann Collet [Sat, 22 Oct 2016 00:02:06 +0000 (17:02 -0700)] 
Merge pull request #423 from terrelln/exec-seq-patch

Fix small bug in ZSTD_execSequence()

8 years agoFix small bug in ZSTD_execSequence() 423/head
Nick Terrell [Thu, 20 Oct 2016 23:45:10 +0000 (16:45 -0700)] 
Fix small bug in ZSTD_execSequence()

`memmove(op, match, sequence.matchLength)` is not the desired behavior.
Overlap is allowed, and handled as if we did `*op++ = *match++`, which
is not how `memmove()` handles overlap.

Only triggered if both of the following conditions are met:
* The match spans extDict & currentPrefixSegment
* `oLitEnd <= oend_w < oLitEnd + length1 < oMatchEnd <= oend`.

These two conditions imply that the block is less than 15 bytes long.
This bug isn't triggered by the streaming API, because it allocates
enough space for the window size + the block size, so there cannot be
a match that is within 8 bytes of the end and overlaps with itself.
It cannot be triggered by the block decompression API because all of
the decompressed data is in the currentPrefixSegment.

Introduced by commit 71585843998459e636f639165ff8a1ca9d161b62

8 years agoimproved ZSTD_compressBlock_opt_extDict_generic
Przemyslaw Skibinski [Fri, 21 Oct 2016 09:19:00 +0000 (11:19 +0200)] 
improved ZSTD_compressBlock_opt_extDict_generic

8 years agoprotect ZSTD_decodeFrameHeader() from invalid usage, as suggested by @spaskob
Yann Collet [Fri, 21 Oct 2016 03:11:00 +0000 (20:11 -0700)] 
protect ZSTD_decodeFrameHeader() from invalid usage, as suggested by @spaskob

8 years agozstd_opt.h: small improvement in compression ratio
Przemyslaw Skibinski [Thu, 20 Oct 2016 09:49:02 +0000 (11:49 +0200)] 
zstd_opt.h: small improvement in compression ratio

8 years agoMerge remote-tracking branch 'refs/remotes/facebook/dev' into dev11
Przemyslaw Skibinski [Thu, 20 Oct 2016 09:01:52 +0000 (11:01 +0200)] 
Merge remote-tracking branch 'refs/remotes/facebook/dev' into dev11

8 years agoMerge remote-tracking branch 'refs/remotes/origin/dev' into dev11
Przemyslaw Skibinski [Thu, 20 Oct 2016 08:54:39 +0000 (10:54 +0200)] 
Merge remote-tracking branch 'refs/remotes/origin/dev' into dev11

8 years agoFix stack buffer overrun when weightTotal == 0
Nick Terrell [Wed, 19 Oct 2016 18:19:54 +0000 (11:19 -0700)] 
Fix stack buffer overrun when weightTotal == 0

If `weightTotal == 0`, then `BIT_highbit32(weightTotal)` is
undefined behavior in the case that it calls `__builtin_clz()`.
If `tableLog == HUF_TABLELOG_ABSOLUTEMAX` then we will access one
byte beyond the end of the buffer.

8 years agoUnitialized memory read in ZSTD_decodeSeqHeaders()
Nick Terrell [Tue, 18 Oct 2016 23:08:52 +0000 (16:08 -0700)] 
Unitialized memory read in ZSTD_decodeSeqHeaders()

Caused by two things:
1. Not checking that `ip` is in range except for the first byte.
2. `ZSTDv0{5,6}_decodeLiteralsBlock()` could return a value larger than `srcSize`.

8 years agoimproved dicitonary segment merge
Yann Collet [Tue, 18 Oct 2016 23:34:58 +0000 (16:34 -0700)] 
improved dicitonary segment merge

8 years agouse implicit rules to compile zstd_decompress.c
Yann Collet [Tue, 18 Oct 2016 23:01:03 +0000 (16:01 -0700)] 
use implicit rules to compile zstd_decompress.c

8 years agoBackport fix from commit 125d817
Nick Terrell [Tue, 18 Oct 2016 21:52:34 +0000 (14:52 -0700)] 
Backport fix from commit 125d817

This fixes a read of unitialized memory.
Full commit hash: 125d81774fe87a2bc18023d999d8e510678c38fb.

8 years agoBackport fix from commit 9e8b09a
Nick Terrell [Tue, 18 Oct 2016 21:22:49 +0000 (14:22 -0700)] 
Backport fix from commit 9e8b09a

Fixes uninitialized memory reads.
Full commit hash: 9e8b09a7bd42dd06ee62b33aff215fbb52708d7b

8 years agodetect early impossible decompression scenario in legacy decoder v0.5
Yann Collet [Tue, 18 Oct 2016 20:48:32 +0000 (13:48 -0700)] 
detect early impossible decompression scenario in legacy decoder v0.5

8 years agono repeat mode in legacy v0.5
Yann Collet [Tue, 18 Oct 2016 20:36:15 +0000 (13:36 -0700)] 
no repeat mode in legacy v0.5

8 years agofixed invalid invocation of dictionary in legacy decoder v0.5
Yann Collet [Tue, 18 Oct 2016 19:25:43 +0000 (12:25 -0700)] 
fixed invalid invocation of dictionary in legacy decoder v0.5

8 years agofix edge case
Yann Collet [Tue, 18 Oct 2016 18:27:52 +0000 (11:27 -0700)] 
fix edge case

8 years agoFix stack buffer overflow in HUF_readCTable()
Nick Terrell [Tue, 18 Oct 2016 01:16:57 +0000 (18:16 -0700)] 
Fix stack buffer overflow in HUF_readCTable()

If `w ==0` on line 153, then `CTable[n].nbBits == tableLog + 1`.
Then `nbPerRank[CTable[n].nbBits]` and `valPerRank[CTable[n].nbBits]`
are stack buffer overflows.

8 years agofix command line interpretation
Yann Collet [Tue, 18 Oct 2016 00:48:48 +0000 (17:48 -0700)] 
fix command line interpretation

8 years agofixed minor corner case
Yann Collet [Tue, 18 Oct 2016 00:28:28 +0000 (17:28 -0700)] 
fixed minor corner case

8 years agoFix buffer overrun in ZSTD_loadDictEntropyStats()
Nick Terrell [Mon, 17 Oct 2016 23:55:52 +0000 (16:55 -0700)] 
Fix buffer overrun in ZSTD_loadDictEntropyStats()

The table log set by `FSE_readNCount()` was not checked in
`ZSTD_loadDictEntropyStats()`.  This caused `FSE_buildCTable()`
to stack/heap overflow in a few places.

The benchmarks look good, there is no obvious compression performance regression:

  > ./zstds/zstd.opt.0 -i10 -b1 -e10 ~/bench/silesia.tar
   1#silesia.tar       : 211988480 ->  73656930 (2.878), 271.6 MB/s , 716.8 MB/s
   2#silesia.tar       : 211988480 ->  70162842 (3.021), 204.8 MB/s , 671.1 MB/s
   3#silesia.tar       : 211988480 ->  66997986 (3.164), 156.8 MB/s , 658.6 MB/s
   4#silesia.tar       : 211988480 ->  66002591 (3.212), 136.4 MB/s , 665.3 MB/s
   5#silesia.tar       : 211988480 ->  65008480 (3.261),  98.9 MB/s , 647.0 MB/s
   6#silesia.tar       : 211988480 ->  62979643 (3.366),  65.2 MB/s , 670.4 MB/s
   7#silesia.tar       : 211988480 ->  61974560 (3.421),  44.9 MB/s , 688.2 MB/s
   8#silesia.tar       : 211988480 ->  61028308 (3.474),  32.4 MB/s , 711.9 MB/s
   9#silesia.tar       : 211988480 ->  60416751 (3.509),  21.1 MB/s , 718.1 MB/s
  10#silesia.tar       : 211988480 ->  60174239 (3.523),  22.2 MB/s , 721.8 MB/s

  > ./compress_zstds/zstd.opt.1 -i10 -b1 -e10 ~/bench/silesia.tar
   1#silesia.tar       : 211988480 ->  73656930 (2.878), 273.8 MB/s , 722.0 MB/s
   2#silesia.tar       : 211988480 ->  70162842 (3.021), 203.2 MB/s , 666.6 MB/s
   3#silesia.tar       : 211988480 ->  66997986 (3.164), 157.4 MB/s , 666.5 MB/s
   4#silesia.tar       : 211988480 ->  66002591 (3.212), 132.1 MB/s , 661.9 MB/s
   5#silesia.tar       : 211988480 ->  65008480 (3.261),  96.8 MB/s , 641.6 MB/s
   6#silesia.tar       : 211988480 ->  62979643 (3.366),  63.1 MB/s , 677.0 MB/s
   7#silesia.tar       : 211988480 ->  61974560 (3.421),  44.3 MB/s , 678.2 MB/s
   8#silesia.tar       : 211988480 ->  61028308 (3.474),  33.1 MB/s , 708.9 MB/s
   9#silesia.tar       : 211988480 ->  60416751 (3.509),  21.5 MB/s , 710.1 MB/s
  10#silesia.tar       : 211988480 ->  60174239 (3.523),  21.9 MB/s , 723.9 MB/s

8 years agoFix buffer overrun in ZSTD_loadEntropy()
Nick Terrell [Mon, 17 Oct 2016 22:49:50 +0000 (15:49 -0700)] 
Fix buffer overrun in ZSTD_loadEntropy()

The table log set by `FSE_readNCount()` was not checked in
`ZSTD_loadEntropy()`.  This caused `FSE_buildDTable(dctx->MLTable, ...)`
to overwrite the beginning of `dctx->hufTable`.

The benchmarks look good, there is no obvious performance regression:

  > ./zstds/zstd.opt.0 -i10 -b1 -e5 ~/bench/silesia.tar
   1#silesia.tar       : 211988480 ->  73656930 (2.878), 268.2 MB/s , 701.0 MB/s
   2#silesia.tar       : 211988480 ->  70162842 (3.021), 199.5 MB/s , 666.9 MB/s
   3#silesia.tar       : 211988480 ->  66997986 (3.164), 154.9 MB/s , 655.6 MB/s
   4#silesia.tar       : 211988480 ->  66002591 (3.212), 128.9 MB/s , 648.4 MB/s
   5#silesia.tar       : 211988480 ->  65008480 (3.261),  98.4 MB/s , 633.4 MB/s

  > ./zstds/zstd.opt.2 -i10 -b1 -e5 ~/bench/silesia.tar
   1#silesia.tar       : 211988480 ->  73656930 (2.878), 266.1 MB/s , 703.7 MB/s
   2#silesia.tar       : 211988480 ->  70162842 (3.021), 199.0 MB/s , 666.6 MB/s
   3#silesia.tar       : 211988480 ->  66997986 (3.164), 156.2 MB/s , 656.2 MB/s
   4#silesia.tar       : 211988480 ->  66002591 (3.212), 133.2 MB/s , 647.4 MB/s
   5#silesia.tar       : 211988480 ->  65008480 (3.261),  96.3 MB/s , 633.3 MB/s

8 years agoCheck if dict is empty before reading first byte
Nick Terrell [Mon, 17 Oct 2016 18:28:02 +0000 (11:28 -0700)] 
Check if dict is empty before reading first byte

8 years agominor opt
Yann Collet [Fri, 14 Oct 2016 23:03:34 +0000 (16:03 -0700)] 
minor opt

8 years ago[pzstd] Fix lantent bug in WorkQueue::push()
Nick Terrell [Thu, 13 Oct 2016 19:03:02 +0000 (12:03 -0700)] 
[pzstd] Fix lantent bug in WorkQueue::push()

8 years ago[pzstd] Add Logger class
Nick Terrell [Thu, 13 Oct 2016 02:02:27 +0000 (19:02 -0700)] 
[pzstd] Add Logger class

8 years ago[pzstd] Reuse ZSTD_{C,D}Stream
Nick Terrell [Thu, 13 Oct 2016 00:23:38 +0000 (17:23 -0700)] 
[pzstd] Reuse ZSTD_{C,D}Stream

8 years ago[pzstd] Put ErrorHolder into SharedState
Nick Terrell [Wed, 12 Oct 2016 22:18:16 +0000 (15:18 -0700)] 
[pzstd] Put ErrorHolder into SharedState

8 years ago[pzstd] Run the reading thread separately
Nick Terrell [Fri, 7 Oct 2016 22:04:34 +0000 (15:04 -0700)] 
[pzstd] Run the reading thread separately

8 years ago[pzstd] Add asan and tsan tests to travis
Nick Terrell [Fri, 7 Oct 2016 04:32:06 +0000 (21:32 -0700)] 
[pzstd] Add asan and tsan tests to travis

gcc-6 tsan is buggy.
It fails to use the correct linker.
It is also broken with `-pie` with linux kernels newer than 4.1, but previous versions require `-pie`...

8 years ago[pzstd] Print the correct width ints
Nick Terrell [Fri, 7 Oct 2016 04:31:16 +0000 (21:31 -0700)] 
[pzstd] Print the correct width ints

8 years ago[pzstd] Fix Makefile
Nick Terrell [Fri, 7 Oct 2016 01:17:08 +0000 (18:17 -0700)] 
[pzstd] Fix Makefile

8 years agorefactor for long commands
Yann Collet [Fri, 14 Oct 2016 21:41:17 +0000 (14:41 -0700)] 
refactor for long commands

8 years agoadded long commands --memory= and --memlimit-decompress=
Yann Collet [Fri, 14 Oct 2016 21:22:32 +0000 (14:22 -0700)] 
added long commands --memory= and --memlimit-decompress=

8 years agoadded long comment --memlimit=
Yann Collet [Fri, 14 Oct 2016 21:07:11 +0000 (14:07 -0700)] 
added long comment --memlimit=

8 years agoMerge branch 'dev' of github.com:facebook/zstd into dev
Yann Collet [Fri, 14 Oct 2016 20:32:35 +0000 (13:32 -0700)] 
Merge branch 'dev' of github.com:facebook/zstd into dev

8 years agonew command -M#, to limit memory usage during decompression (#403)
Yann Collet [Fri, 14 Oct 2016 20:13:13 +0000 (13:13 -0700)] 
new command -M#, to limit memory usage during decompression (#403)

8 years agoMerge pull request #417 from terrelln/ubsan-failures
Yann Collet [Thu, 13 Oct 2016 10:37:22 +0000 (03:37 -0700)] 
Merge pull request #417 from terrelln/ubsan-failures

Fix ubsan failures (pass NULL to memcpy)

8 years agoFix ubsan failures (pass NULL to memcpy) 417/head
Nick Terrell [Thu, 13 Oct 2016 03:54:42 +0000 (20:54 -0700)] 
Fix ubsan failures (pass NULL to memcpy)

8 years agoadded ZSTD_error_frameParameter_windowTooLarge (#403)
Yann Collet [Thu, 13 Oct 2016 00:28:59 +0000 (17:28 -0700)] 
added ZSTD_error_frameParameter_windowTooLarge (#403)

8 years agoupdated visual projects
Yann Collet [Wed, 12 Oct 2016 22:29:22 +0000 (15:29 -0700)] 
updated visual projects

8 years agoMerge pull request #406 from pixelb/pzstd-test-headless
Yann Collet [Wed, 12 Oct 2016 19:23:11 +0000 (12:23 -0700)] 
Merge pull request #406 from pixelb/pzstd-test-headless

pzstd: fix test failure on headless build

8 years agomake creates libzstd binaries (#415)
Yann Collet [Wed, 12 Oct 2016 18:09:36 +0000 (11:09 -0700)] 
make creates libzstd binaries (#415)

8 years agofix cmake
Yann Collet [Wed, 12 Oct 2016 17:23:53 +0000 (10:23 -0700)] 
fix cmake