]>
git.ipfire.org Git - thirdparty/zstd.git/log
Nick Terrell [Tue, 10 Jul 2018 01:24:07 +0000 (18:24 -0700)]
zstdcli: Allow -o before --train
Only set the default value if `outFileName` is unset.
Fixes #1227.
Yann Collet [Mon, 16 Jul 2018 10:26:58 +0000 (03:26 -0700)]
Merge pull request #1234 from codecat/add-premake
Added premake4/GENie script to contrib folder
Yann Collet [Mon, 16 Jul 2018 10:14:12 +0000 (03:14 -0700)]
Merge pull request #1233 from terrelln/doc-fiz
Small fixes to zstd specification
Codecat [Sat, 14 Jul 2018 10:34:03 +0000 (12:34 +0200)]
Fix wrong conditions
Codecat [Sat, 14 Jul 2018 10:27:42 +0000 (12:27 +0200)]
Update zstd.lua
Nick Terrell [Fri, 13 Jul 2018 20:26:15 +0000 (13:26 -0700)]
Merge pull request #1225 from jennifermliu/dev
Split samples when building dictionary for COVER
Nick Terrell [Thu, 12 Jul 2018 23:56:54 +0000 (16:56 -0700)]
Merge pull request #1235 from ldv-alt/dev
tests: use /dev/zero instead of /dev/random on all systems except GNU/Hurd
Jennifer Liu [Wed, 11 Jul 2018 22:50:28 +0000 (15:50 -0700)]
Add explanation for split=100
Codecat [Wed, 11 Jul 2018 16:02:18 +0000 (18:02 +0200)]
Added premake4/GENie script to contrib folder
Dmitry V. Levin [Wed, 11 Jul 2018 12:41:50 +0000 (12:41 +0000)]
tests: use /dev/zero instead of /dev/random on all systems except GNU/Hurd
https://github.com/facebook/zstd/pull/1124 broke the test suite
on Linux. Looks like GNU/Hurd is the only operating system where
/dev/random is available for writing by unprivileged processes.
https://github.com/facebook/zstd/pull/1222 reverted the change
introduced by https://github.com/facebook/zstd/pull/1124 for OpenBSD
only, other operating systems need that change to be reverted, too.
Fixes: 2dde9d5abaad ("Write to /dev/random for test")
Complements:
276988f7948d ("OpenBSD is unable to write to /dev/zero")
Nick Terrell [Tue, 10 Jul 2018 22:07:36 +0000 (15:07 -0700)]
Small fixes to zstd specification
Update to keep in sync with the RFC.
Jennifer Liu [Tue, 10 Jul 2018 18:19:33 +0000 (11:19 -0700)]
Change default splitPoint to 100
Jennifer Liu [Mon, 9 Jul 2018 20:53:25 +0000 (13:53 -0700)]
Change back to splitPoint<=0
Jennifer Liu [Mon, 9 Jul 2018 19:26:53 +0000 (12:26 -0700)]
Only make 0.0 default splitPoint
Yann Collet [Sat, 7 Jul 2018 00:56:35 +0000 (17:56 -0700)]
Merge pull request #1226 from facebook/noPrefetch
add build macro NO_PREFETCH
Yann Collet [Sat, 7 Jul 2018 00:06:04 +0000 (17:06 -0700)]
add build macro NO_PREFETCH
prevent usage of prefetch intrinsic commands
which are not supported by c2rust
(see https://github.com/immunant/c2rust/issues/13)
Jennifer Liu [Fri, 6 Jul 2018 21:24:18 +0000 (14:24 -0700)]
Change cover_sum back to 2 parameters and fix splitPoint issues
Jennifer Liu [Fri, 6 Jul 2018 05:40:32 +0000 (22:40 -0700)]
Fix testing parameter
Jennifer Liu [Thu, 5 Jul 2018 18:05:31 +0000 (11:05 -0700)]
Update doc for split==100
Jennifer Liu [Thu, 5 Jul 2018 17:38:45 +0000 (10:38 -0700)]
Allow splitPoint==1.0 (using all samples for both training and testing)
Jennifer Liu [Wed, 4 Jul 2018 00:53:27 +0000 (17:53 -0700)]
Some edits based on pull request comments
Jennifer Liu [Tue, 3 Jul 2018 19:07:06 +0000 (12:07 -0700)]
Update minimal training sample size
Yann Collet [Mon, 2 Jul 2018 20:33:53 +0000 (13:33 -0700)]
Merge pull request #1206 from GeorgeLu97/FullBenchParam
Fullbench Param
Yann Collet [Mon, 2 Jul 2018 20:33:27 +0000 (13:33 -0700)]
Merge pull request #1188 from GeorgeLu97/BenchModule
Bench module
Jennifer Liu [Mon, 2 Jul 2018 18:37:04 +0000 (11:37 -0700)]
Update COVER dictionary builder tests
Yann Collet [Mon, 2 Jul 2018 16:14:37 +0000 (09:14 -0700)]
Merge pull request #1223 from jon-turney/dev
meson: fix build
Jon Turney [Sun, 1 Jul 2018 21:41:08 +0000 (22:41 +0100)]
meson: fix build
Jennifer Liu [Mon, 2 Jul 2018 02:59:37 +0000 (19:59 -0700)]
Update documentation
Yann Collet [Sat, 30 Jun 2018 18:47:41 +0000 (11:47 -0700)]
Merge pull request #1222 from bket/openbsd
2 separate issues found when running zstd's tests on OpenBSD
Björn Ketelaars [Sat, 30 Jun 2018 11:22:14 +0000 (13:22 +0200)]
xz/lzma warning causes test to fail
OpenBSD's port building infrastructure is able to build in a privilege
separated mode. It uses a privilege drop model. Regression tests fail in
this mode as xz/lzma is unable to set file group and errors out with:
xz: tmp.xz: Cannot set the file group: Operation not permitted
gmake[1]: *** [Makefile:307: zstd-playTests] Error 2
Actually it is not a xz/lzma error but a warning causing zstd's
regression test to fail. Proposed fix is to have xz/lzma not set the
exit status to 2 even if a condition worth a warning was detected (-Q
flag).
Björn Ketelaars [Sat, 30 Jun 2018 11:01:58 +0000 (13:01 +0200)]
OpenBSD is unable to write to /dev/zero
https://github.com/facebook/zstd/pull/1124 fixes an issue with GNU/Hurd
being unable to write to /dev/zero. Implemented fix is writing to
/dev/random instead.
On OpenBSD a regular user is unable to write to /dev/random because of
permissions set on this device. Result is failing a regression test.
Proposed solution should work for all platforms.
Jennifer Liu [Sat, 30 Jun 2018 01:02:02 +0000 (18:02 -0700)]
Fix another declaration issue
Jennifer Liu [Sat, 30 Jun 2018 00:54:41 +0000 (17:54 -0700)]
Add split=# to cli
Yann Collet [Sat, 30 Jun 2018 00:10:56 +0000 (17:10 -0700)]
make build tests more unforgiving
`-Werror` will ensure they fail if there is the slightest warning.
fix a minor warning specific to `zstd_decompress` variant.
Yann Collet [Fri, 29 Jun 2018 23:52:21 +0000 (16:52 -0700)]
fix `test-zstd` can be run with parallel compilation
fix #1221
Jennifer Liu [Fri, 29 Jun 2018 23:17:20 +0000 (16:17 -0700)]
Explicitly cast double to unsigned
Jennifer Liu [Fri, 29 Jun 2018 22:46:56 +0000 (15:46 -0700)]
Fix variable declaration problem
Jennifer Liu [Fri, 29 Jun 2018 22:38:08 +0000 (15:38 -0700)]
Another fix to comparator
Yann Collet [Fri, 29 Jun 2018 21:08:45 +0000 (14:08 -0700)]
Merge pull request #1220 from felixhandte/list-stdin-check
Allow Invoking `zstd --list` When `stdin` is not a `tty`
W. Felix Handte [Fri, 29 Jun 2018 20:31:59 +0000 (16:31 -0400)]
Make One Travis CI Run Run Tests With Non-TTY `stdin`
W. Felix Handte [Fri, 29 Jun 2018 20:31:22 +0000 (16:31 -0400)]
Fix Tests of `--list` Behavior with `stdin`
Jennifer Liu [Fri, 29 Jun 2018 19:47:03 +0000 (12:47 -0700)]
Fix splitPoint floating point comparison problem
W. Felix Handte [Fri, 29 Jun 2018 19:33:44 +0000 (15:33 -0400)]
Allow Invoking `zstd --list` When `stdin` is not a `tty`
Also now returns an error when no inputs are given.
New proposed behavior:
```
felix@odin:~/prog/zstd (list-stdin-check)$ ./zstd -l; echo $?
No files given
1
felix@odin:~/prog/zstd (list-stdin-check)$ ./zstd -l Makefile.zst; echo $?
Frames Skips Compressed Uncompressed Ratio Check Filename
1 0 3.08 KB 10.92 KB 3.544 XXH64 Makefile.zst
0
felix@odin:~/prog/zstd (list-stdin-check)$ ./zstd -l <Makefile.zst; echo $?
zstd: --list does not support reading from standard input
No files given
1
felix@odin:~/prog/zstd (list-stdin-check)$ ./zstd -l Makefile.zst <Makefile.zst; echo $?
Frames Skips Compressed Uncompressed Ratio Check Filename
1 0 3.08 KB 10.92 KB 3.544 XXH64 Makefile.zst
0
felix@odin:~/prog/zstd (list-stdin-check)$
```
Jennifer Liu [Fri, 29 Jun 2018 19:33:34 +0000 (12:33 -0700)]
Split samples into train and test sets
Yann Collet [Thu, 28 Jun 2018 01:53:39 +0000 (18:53 -0700)]
Merge pull request #1214 from jennifermliu/dev
Make --fast=0 fail
Yann Collet [Thu, 28 Jun 2018 01:53:12 +0000 (18:53 -0700)]
Merge pull request #1218 from facebook/man
minor man page update
Yann Collet [Thu, 28 Jun 2018 01:42:11 +0000 (18:42 -0700)]
minor man page update
regarding advanced parameter `tlen`
which was recently changed.
`0` in association with `ZSTD_fast` now means "normal fast mode".
Yann Collet [Wed, 27 Jun 2018 23:45:38 +0000 (16:45 -0700)]
Merge pull request #1216 from felixhandte/pool-test-time-t-fix
poolTests.c: Fix Interval Var Type
Jennifer Liu [Wed, 27 Jun 2018 23:27:45 +0000 (16:27 -0700)]
Redirect failed test result to INTOVOID and update comment about parsing fast command
W. Felix Handte [Wed, 27 Jun 2018 23:25:39 +0000 (19:25 -0400)]
Consolidate Fast-Running Travis Jobs
W. Felix Handte [Wed, 27 Jun 2018 23:21:42 +0000 (19:21 -0400)]
Also Run test-pool Target in Travis
W. Felix Handte [Wed, 27 Jun 2018 23:15:38 +0000 (19:15 -0400)]
poolTests.c: Fix Interval Var Type
Yann Collet [Wed, 27 Jun 2018 23:03:46 +0000 (16:03 -0700)]
removed unused imaged
Yann Collet [Wed, 27 Jun 2018 22:58:34 +0000 (15:58 -0700)]
added graph for cdict speed v1.3.5 improvements
Jennifer Liu [Wed, 27 Jun 2018 21:27:27 +0000 (14:27 -0700)]
Make fast=0 fail
Yann Collet [Wed, 27 Jun 2018 21:13:16 +0000 (14:13 -0700)]
Merge pull request #1213 from facebook/arm64
re-enable arm64 tests
Yann Collet [Wed, 27 Jun 2018 20:19:14 +0000 (13:19 -0700)]
attempt to re-enable arm64 tests
Yann Collet [Wed, 27 Jun 2018 19:19:17 +0000 (12:19 -0700)]
Merge pull request #1211 from facebook/staticAssert
updated DEBUG_STATIC_ASSERT()
Yann Collet [Wed, 27 Jun 2018 19:11:45 +0000 (12:11 -0700)]
Merge pull request #1212 from facebook/decSpeed
Fix decoding speed
Yann Collet [Wed, 27 Jun 2018 03:10:45 +0000 (20:10 -0700)]
slightly adjusted default-distribution threshold
depending on strategy.
fast favors faster compression and decompression speeds.
Yann Collet [Wed, 27 Jun 2018 00:24:41 +0000 (17:24 -0700)]
zeroise freq table with memset()
improves decoding speed by ~5% in github_users sample set
Yann Collet [Tue, 26 Jun 2018 21:47:29 +0000 (14:47 -0700)]
Merge pull request #1208 from facebook/msys2
minor fixes for MSYS2 compilation
Yann Collet [Tue, 26 Jun 2018 21:08:35 +0000 (14:08 -0700)]
switched to a sizeof() version
avoid -Werror=unused-variable issue
Yann Collet [Tue, 26 Jun 2018 19:13:16 +0000 (12:13 -0700)]
Merge pull request #1207 from oleid/cmake_multithread_logic
Correct multithread logic, fixing 'unsupported parameter' error
Yann Collet [Tue, 26 Jun 2018 19:04:59 +0000 (12:04 -0700)]
updated DEBUG_STATIC_ASSERT()
following suggestion from #1209
cyan4973 [Tue, 26 Jun 2018 08:22:45 +0000 (01:22 -0700)]
minor fixes for MSYS2 compilation
oleid [Tue, 26 Jun 2018 06:36:41 +0000 (08:36 +0200)]
Correct multithread logic, fixing 'unsupported parameter' error
The original conditions only worked, when both, static and shared variants where built, resulting in an inconsistency between programs and library. The program was built with MT support enabled, the library not. That lead to error 11 'unsupported parameter' when compressing anything with the command line tool.
When changing the AND condition to `ZSTD_MULTITHREAD_SUPPORT AND (ZSTD_BUILD_SHARED OR ZSTD_BUILD_SHARED)`, cmake stopps complaining one of the targets wasn't built. This commit works for any case.
George Lu [Wed, 20 Jun 2018 00:07:34 +0000 (17:07 -0700)]
New fullbench args
-l# gives some level
--zstd= style parameters also supported
Nick Terrell [Mon, 25 Jun 2018 22:21:08 +0000 (15:21 -0700)]
[zstdmt] Fix jobsize bugs (#1205)
[zstdmt] Fix jobsize bugs
* `ZSTDMT_serialState_reset()` should use `targetSectionSize`, not `jobSize` when sizing the seqstore.
Add an assert that checks that we sized the seqstore using the right job size.
* `ZSTDMT_compressionJob()` should check if `rawSeqStore.seq == NULL`.
* `ZSTDMT_initCStream_internal()` should not adjust `mtctx->params.jobSize` (clamping to MIN/MAX is okay).
George Lu [Mon, 25 Jun 2018 22:01:03 +0000 (15:01 -0700)]
Interleave compression/decompression
Fix Bugs
Yann Collet [Mon, 25 Jun 2018 19:42:31 +0000 (12:42 -0700)]
Merge pull request #1200 from felixhandte/zstd-attach-dict-pref
Add CCtx Param Controlling Dict Attachment Behavior
George Lu [Sat, 23 Jun 2018 00:25:16 +0000 (17:25 -0700)]
Opaque State
And minor fixups (comments/alignment/checks/fix memory leak)
Yann Collet [Sat, 23 Jun 2018 03:25:29 +0000 (20:25 -0700)]
Merge pull request #1204 from facebook/noForwardProgress
Error code on no forward progress
Yann Collet [Sat, 23 Jun 2018 00:58:21 +0000 (17:58 -0700)]
error on no forward progress
streaming decoders, such as ZSTD_decompressStream() or ZSTD_decompress_generic(),
may end up making no forward progress,
(aka no byte read from input __and__ no byte written to output),
due to unusual parameters conditions,
such as providing an output buffer already full.
In such case, the caller may be caught in an infinite loop,
calling the streaming decompression function again and again,
without making any progress.
This version detects such situation, and generates an error instead :
ZSTD_error_dstSize_tooSmall when output buffer is full,
ZSTD_error_srcSize_wrong when input buffer is empty.
The detection tolerates a number of attempts before triggering an error,
controlled by ZSTD_NO_FORWARD_PROGRESS_MAX macro constant,
which is set to 16 by default, and can be re-defined at compilation time.
This behavior tolerates potentially existing implementations
where such cases happen sporadically, like once or twice,
which is not dangerous (only infinite loops are),
without generating an error, hence without breaking these implementations.
Yann Collet [Fri, 22 Jun 2018 21:20:07 +0000 (14:20 -0700)]
Merge pull request #1197 from facebook/poolResize
Thread Pool resize
Yann Collet [Fri, 22 Jun 2018 19:14:59 +0000 (12:14 -0700)]
changed POOL_resize() return type to int
return is now just en error code.
This guarantee that `ctx` remains valid after POOL_resize().
Gets rid of internal POOL_free() operation.
Yann Collet [Fri, 22 Jun 2018 18:53:50 +0000 (11:53 -0700)]
Merge pull request #1201 from facebook/rfcUpdate
updated Zstandard frame format
Yann Collet [Fri, 22 Jun 2018 18:53:23 +0000 (11:53 -0700)]
Merge pull request #1196 from felixhandte/zstd-btopt-in-place-dict
ZSTD_btopt: Support Searching the Dictionary Context In-Place
Yann Collet [Fri, 22 Jun 2018 18:52:52 +0000 (11:52 -0700)]
Merge pull request #1202 from facebook/barelyCompressible
Increase threshold detection of poorly compressible data
Yann Collet [Fri, 22 Jun 2018 01:32:38 +0000 (18:32 -0700)]
huf: increase threshold detection of poorly compressible data
Yann Collet [Fri, 22 Jun 2018 01:08:11 +0000 (18:08 -0700)]
fixed minor typos, detected by @terrelln
Yann Collet [Fri, 22 Jun 2018 01:04:58 +0000 (18:04 -0700)]
add a cond_broadcast after resize
to make sure all threads (notably newly available threads)
get awaken to immediately process potential items in the queue.
Yann Collet [Fri, 22 Jun 2018 00:48:34 +0000 (17:48 -0700)]
updated Zstandard frame format
adding clarifications from IETF RFC DISCUSS.
George Lu [Thu, 21 Jun 2018 18:16:53 +0000 (11:16 -0700)]
benchFunction Timed Wrappers
Add BMK_benchFunctionTimed
Add BMK_init_customResultCont..
Change benchMem to use benchFunctionTimed
Minor Fixes/Adjustments
George Lu [Tue, 19 Jun 2018 17:58:22 +0000 (10:58 -0700)]
Incremental Display + Fn Separations
Seperate syntheticTest and fileTableTest (now renamed as benchFiles)
Add incremental display to benchMem
Change to only iterMode for benchFunction
Make Synthetic test's compressibility configurable from cli (using -P#)
Yann Collet [Thu, 21 Jun 2018 21:58:59 +0000 (14:58 -0700)]
added extended POOL test
abrupt end + downsizing with running jobs remaining in queue.
also : POOL_resize() requires numThreads >= 1
W. Felix Handte [Thu, 21 Jun 2018 21:02:50 +0000 (17:02 -0400)]
Add CCtx Param Controlling Dict Attachment Behavior
W. Felix Handte [Thu, 21 Jun 2018 19:25:32 +0000 (15:25 -0400)]
Add Repcode Bounds Check
W. Felix Handte [Thu, 21 Jun 2018 19:25:44 +0000 (15:25 -0400)]
Add Debug Log Statement
W. Felix Handte [Thu, 21 Jun 2018 19:24:08 +0000 (15:24 -0400)]
Fix `dmsBtLow` Test
Yann Collet [Thu, 21 Jun 2018 19:24:36 +0000 (12:24 -0700)]
added a test for POOL (multithreading)
ensuring all jobs in queue are nonetheless completed
when POOL is instructed to end abruptly (POOL_free())
W. Felix Handte [Thu, 21 Jun 2018 15:20:01 +0000 (11:20 -0400)]
Conceivably Dedup ZSTD_noDict and ZSTD_dictMatchState _insertBt1 Impls
By reverting to the bool extDict flag, we call ZSTD_insertBt1 with the same
const args in both non-extDict dictModes.
Yann Collet [Thu, 21 Jun 2018 00:18:57 +0000 (17:18 -0700)]
fixed: bug when counting nb of active threads
when queueSize > 1
also : added a test in testpool.c
verifying resizing is effective.
Yann Collet [Wed, 20 Jun 2018 21:35:39 +0000 (14:35 -0700)]
change control of threadLimit
now limits maximum nb of active threads
even when queueSize > 1.
Jennifer Liu [Wed, 20 Jun 2018 21:23:14 +0000 (14:23 -0700)]
set up sample config.yml
W. Felix Handte [Wed, 20 Jun 2018 20:54:53 +0000 (16:54 -0400)]
Consistency in Guarding DMS-Only Variable Initializations
W. Felix Handte [Wed, 20 Jun 2018 19:51:14 +0000 (15:51 -0400)]
Also Use `matchLow` for HC3 Match
W. Felix Handte [Wed, 20 Jun 2018 19:27:23 +0000 (15:27 -0400)]
Minor Changes
W. Felix Handte [Wed, 20 Jun 2018 02:18:08 +0000 (22:18 -0400)]
Remove Dead(!) HC3 DMS Lookup
Yann Collet [Wed, 20 Jun 2018 19:26:31 +0000 (12:26 -0700)]
Merge pull request #1198 from facebook/msdebug
made Visual Studio compatible with DEBUGLEVEL >= 2