]>
git.ipfire.org Git - thirdparty/zstd.git/log
Yann Collet [Tue, 18 Sep 2018 20:07:08 +0000 (13:07 -0700)]
updated documentation of *refPrefix()
indicating the equivalence with `diff` operation.
Nick Terrell [Mon, 17 Sep 2018 21:40:27 +0000 (14:40 -0700)]
Merge pull request #1321 from bket/non-portable
'head -c BYTES' is non-portable.
Yann Collet [Mon, 17 Sep 2018 21:10:17 +0000 (14:10 -0700)]
Merge pull request #1324 from ko-zu/fixclangcode
Fix largeNbDicts bench for clangbuild
Björn Ketelaars [Sat, 30 Jun 2018 13:42:42 +0000 (15:42 +0200)]
'head -c BYTES' is non-portable.
tests/playTests.sh uses 'head -c' in a couple of tests to truncate the
last byte of a file. The '-c' option is non-portable (not in POSIX).
Instead use a wrapper around dd (truncateLastByte).
Nick Terrell [Mon, 17 Sep 2018 18:04:51 +0000 (11:04 -0700)]
Merge pull request #1322 from azat-archive/seekable-fixes-pull
Fixes read write past end of input buffer.
ko-zu [Mon, 17 Sep 2018 04:09:08 +0000 (13:09 +0900)]
Fix largeNbDicts bench for clangbuild
Remove unsigned to size_t promotion to fix implicit down conversion errors in clangbuild target.
Azat Khuzhin [Sun, 16 Sep 2018 15:04:43 +0000 (18:04 +0300)]
seekable_decompression: support offset greater then UNIT_MAX
Azat Khuzhin [Sun, 16 Sep 2018 15:04:43 +0000 (18:04 +0300)]
zstdseek_decompress: fix decompression with data left in input buffer
Yann Collet [Sun, 16 Sep 2018 02:31:42 +0000 (19:31 -0700)]
Merge pull request #1319 from ko-zu/fixclangbuild
Fix clang build
ko-zu [Sun, 16 Sep 2018 01:27:02 +0000 (10:27 +0900)]
Fix clang build
Fix dixygen comment
Fix clang binary path
Yann Collet [Fri, 14 Sep 2018 23:06:35 +0000 (16:06 -0700)]
minor code comment update
Yann Collet [Fri, 14 Sep 2018 22:29:19 +0000 (15:29 -0700)]
Merge pull request #1295 from felixhandte/hdr-intro-comment-negative-lvls
Proposed Update to Zstd.h Introduction Comment
Yann Collet [Fri, 14 Sep 2018 17:37:46 +0000 (10:37 -0700)]
Merge pull request #1316 from facebook/coldDict
Cold dictionary mitigation
Yann Collet [Thu, 13 Sep 2018 23:44:04 +0000 (16:44 -0700)]
updated code comments, based on @terrelln review
Yann Collet [Thu, 13 Sep 2018 19:29:52 +0000 (12:29 -0700)]
fixed msan error
cold dictionary is detected through a comparison with dictEnd,
which was not initialized at the beginning of first DCtx usage.
Yann Collet [Wed, 12 Sep 2018 23:54:57 +0000 (16:54 -0700)]
final parameter tuning
Yann Collet [Wed, 12 Sep 2018 23:40:28 +0000 (16:40 -0700)]
clean traces
Yann Collet [Wed, 12 Sep 2018 23:15:37 +0000 (16:15 -0700)]
fixed PREFETCH() macro
for corner cases and platforms without this instruction
Yann Collet [Wed, 12 Sep 2018 23:12:00 +0000 (16:12 -0700)]
Merge pull request #1315 from cmcginty/dev
Add build define to manually enable -rdynamic LD flag
Yann Collet [Wed, 12 Sep 2018 22:35:21 +0000 (15:35 -0700)]
conditional dict content prefetching
based on nbSeq.
Casey McGinty [Wed, 12 Sep 2018 21:00:08 +0000 (14:00 -0700)]
Add build define to manually enable -rdynamic LD flag
Yann Collet [Wed, 12 Sep 2018 20:30:16 +0000 (13:30 -0700)]
Merge pull request #1314 from terrelln/cpuid
[libzstd] Fix cpu for MSFT ARM
Yann Collet [Wed, 12 Sep 2018 19:32:09 +0000 (12:32 -0700)]
adjust heuristic decisions
Nick Terrell [Wed, 12 Sep 2018 19:05:32 +0000 (12:05 -0700)]
Also allow x86
Yann Collet [Wed, 12 Sep 2018 18:28:45 +0000 (11:28 -0700)]
largeNbDicts : can select a nb of blocks
will automatically truncate or repeat input as needed,
to create the requested nb of blocks.
default: nb of files, eventually increased appropriately if blockSize is set
Nick Terrell [Wed, 12 Sep 2018 17:35:16 +0000 (10:35 -0700)]
[libzstd] Fix cpu for MSFT ARM
The `__cpuid()` and `__cpuidex()` intrinsics are only available
on x86 and x86_64.
Yann Collet [Wed, 12 Sep 2018 17:29:47 +0000 (10:29 -0700)]
added conditional prefetch
depending on amount of work to do.
Yann Collet [Wed, 12 Sep 2018 17:13:23 +0000 (10:13 -0700)]
Merge pull request #1311 from cmcginty/dev
Print a stack trace on unexpected term signal (e.g. SIGABRT)
Yann Collet [Wed, 12 Sep 2018 00:23:44 +0000 (17:23 -0700)]
implemented first prefetch
based on dictID.
dictContent is prefetched up to 32 KB
(no contentSize adaptation)
Casey McGinty [Tue, 11 Sep 2018 23:19:34 +0000 (16:19 -0700)]
Disable -rdynamic LD option on Windows
Casey McGinty [Tue, 11 Sep 2018 21:49:47 +0000 (14:49 -0700)]
Update comments, and LD flag usage in Make
Casey McGinty [Tue, 11 Sep 2018 18:56:50 +0000 (11:56 -0700)]
Remove dead code and method name typo
Casey McGinty [Tue, 11 Sep 2018 18:39:49 +0000 (11:39 -0700)]
Move ABRThandler func out of internal lib
Casey McGinty [Tue, 11 Sep 2018 17:40:45 +0000 (10:40 -0700)]
Refactor abort signal handling
- Print signal name to term
- Add -rdynamic option to generate Linux symbol names in backtrace
- Raise default signal after handler to ensure program termination
Yann Collet [Mon, 10 Sep 2018 20:11:11 +0000 (13:11 -0700)]
Merge pull request #1310 from facebook/Dworkspace
reduce DDict size by 2KB
Yann Collet [Mon, 10 Sep 2018 18:24:17 +0000 (11:24 -0700)]
added comment about minimum size of FSE tables
required for DDict creation,
which use this space as workspace during Hufman table building stage.
Yann Collet [Fri, 7 Sep 2018 22:42:04 +0000 (15:42 -0700)]
Merge pull request #1307 from facebook/spec
spec clarification
Casey McGinty [Fri, 7 Sep 2018 01:46:52 +0000 (18:46 -0700)]
Print a stack trace on unexpected term signal (e.g. SIGABRT)
For OSX and Linux, add a signal handler to SIGABRT, SGIFPE, SIGILL,
SIGSEGV, and SIGBUS. When the program terminates unexpectedly the
handler will print the current stack to the terminal to help determine
the location of the failure.
On OSX the output will look like:
```
Stack trace:
4 zstd 0x000000010927ed96 main + 16886
5 libdyld.dylib 0x00007fff767d1015 start + 1
6 ??? 0x0000000000000001 0x0 + 1
```
On Linux the output will look like:
```
Stack trace:
./zstd() [0x4b8e1b]
./zstd() [0x4b928a]
./zstd() [0x403dc2]
/lib64/libc.so.6(__libc_start_main+0xf5) [0x7f5e0fbb0445]
./zstd() [0x405754]
```
As is, the code does not function on WIN32.
See also: https://oroboro.com/stack-trace-on-crash/
Yann Collet [Fri, 7 Sep 2018 01:01:10 +0000 (18:01 -0700)]
Merge pull request #1309 from facebook/islink
fixed UTIL_isLink() for Mac OS-X
Yann Collet [Fri, 7 Sep 2018 00:54:13 +0000 (17:54 -0700)]
strengthened conditions for using workplace into fse table space
ensure that the structure layout is as expected.
will trigger an error if it changes in the future.
Another solution would be to use a union,
this would be cleaner and get rid of these static asserts.
However, in order to keep the current code unmodified,
it would be necessary to use an un-named unions.
And apparently, un-named unions are only possible on "recent" compilers (C99+).
Yann Collet [Fri, 7 Sep 2018 00:33:27 +0000 (17:33 -0700)]
Merge branch 'islink' into Dworkspace
Yann Collet [Fri, 7 Sep 2018 00:32:16 +0000 (17:32 -0700)]
fixed UTIL_isLink() for Mac OS-X
Yann Collet [Fri, 7 Sep 2018 00:07:53 +0000 (17:07 -0700)]
reduced DDict size, by -2KB
corresponding to the removal of workspace
which is needed while building huffman table
and is now either present in DCtx,
or temporarily borrowed from available FSE table space.
Yann Collet [Thu, 6 Sep 2018 21:38:32 +0000 (14:38 -0700)]
Merge pull request #1308 from facebook/codeofconduct
added code of conduct
Yann Collet [Thu, 6 Sep 2018 18:20:39 +0000 (11:20 -0700)]
added code of conduct
as requested by Facebook OSS program.
Yann Collet [Thu, 6 Sep 2018 16:50:56 +0000 (09:50 -0700)]
Merge pull request #1304 from facebook/largeNbDicts
contrib/largeNbDicts
Yann Collet [Wed, 5 Sep 2018 21:33:51 +0000 (14:33 -0700)]
fixed minor static analyzer warning
Yann Collet [Wed, 5 Sep 2018 19:25:35 +0000 (12:25 -0700)]
spec clarification
following #1305 comments from @ulikunitz
Nick Terrell [Wed, 5 Sep 2018 01:03:36 +0000 (18:03 -0700)]
Merge pull request #1306 from jennifermliu/dev
Change default f of FASTCOVER to 20
Jennifer Liu [Wed, 5 Sep 2018 00:12:35 +0000 (17:12 -0700)]
Change default f to 20
Nick Terrell [Tue, 4 Sep 2018 23:59:41 +0000 (16:59 -0700)]
Merge pull request #1302 from jennifermliu/splitpoint
Always use splitPoint=1.0 for non-optimize cover and fastcover and some minor changes on comments
Yann Collet [Tue, 4 Sep 2018 21:57:45 +0000 (14:57 -0700)]
updated documentation
Yann Collet [Fri, 31 Aug 2018 17:01:06 +0000 (10:01 -0700)]
silenced false-positive scan-build warning
Yann Collet [Fri, 31 Aug 2018 01:09:33 +0000 (18:09 -0700)]
Merge pull request #1303 from cmcginty/dev
Zstandard - better `make list`
Casey McGinty [Thu, 30 Aug 2018 23:54:43 +0000 (16:54 -0700)]
Add optional description field support to "list" target
Yann Collet [Thu, 30 Aug 2018 23:43:28 +0000 (16:43 -0700)]
fixed link order for old compilers
Yann Collet [Thu, 30 Aug 2018 23:24:44 +0000 (16:24 -0700)]
minor : createDictionaryBuffer() can create dictionaries of different sizes
Yann Collet [Thu, 30 Aug 2018 22:54:14 +0000 (15:54 -0700)]
fixed minor compatibility issues with older compilers
Jennifer Liu [Thu, 30 Aug 2018 22:46:39 +0000 (15:46 -0700)]
Update comment about default dictionary builder
Jennifer Liu [Thu, 30 Aug 2018 22:37:29 +0000 (15:37 -0700)]
Update comment on default steps of cover and fastcover
Yann Collet [Thu, 30 Aug 2018 21:59:10 +0000 (14:59 -0700)]
-std=c99 for largeNbDicts
Jennifer Liu [Thu, 30 Aug 2018 21:53:59 +0000 (14:53 -0700)]
Always use splitPoint=1.0 for non-optimize cover and fastcover
Jennifer Liu [Thu, 30 Aug 2018 21:57:16 +0000 (14:57 -0700)]
Merge branch 'dev' of github.com:facebook/zstd into dev
Yann Collet [Thu, 30 Aug 2018 18:02:08 +0000 (11:02 -0700)]
largeNbDicts compatible with multiple source files
splitting is disabled by default, but can be re-enabled using usual command -B#
update commands to look like zstd ones
Yann Collet [Wed, 29 Aug 2018 23:17:22 +0000 (16:17 -0700)]
make all includes contrib/largeNbDicts
Yann Collet [Wed, 29 Aug 2018 01:19:19 +0000 (18:19 -0700)]
added a README
for documentation
Yann Collet [Wed, 29 Aug 2018 01:13:46 +0000 (18:13 -0700)]
increases randomness of ddict ptrs
Yann Collet [Wed, 29 Aug 2018 01:05:31 +0000 (18:05 -0700)]
level, block size and nb dicts can be set on command line
Yann Collet [Wed, 29 Aug 2018 00:10:25 +0000 (17:10 -0700)]
Merge pull request #1301 from terrelln/lit-size
[zstd] Fix seqStore growth
Yann Collet [Tue, 28 Aug 2018 22:47:07 +0000 (15:47 -0700)]
first working test program
measures :
- compression ratio with / without dictionary
- create one dictionary per block
- memory budget for dictionaries
- decompression speed, using one different dictionary per block
current limitations :
- only one file
- 4K blocks only
- automatic dictionary built with 4K size
dictionary can be selected on command line, with -D
Nick Terrell [Tue, 28 Aug 2018 20:56:47 +0000 (13:56 -0700)]
Fix decodecorpus
Nick Terrell [Tue, 28 Aug 2018 20:42:01 +0000 (13:42 -0700)]
Small test fixes
Nick Terrell [Tue, 28 Aug 2018 20:24:44 +0000 (13:24 -0700)]
[zstd] Fix seqStore growth
We could undersize the literals buffer by up to 11 bytes,
due to a combination of 2 bugs:
* The literals buffer didn't have `WILDCOPY_OVERLENGTH` extra
space, like it is supposed to.
* We didn't check the literals buffer size in `ZSTD_sufficientBuff()`.
Nick Terrell [Tue, 28 Aug 2018 20:20:37 +0000 (13:20 -0700)]
[fuzzer] Test growing the seqStore_t
Yann Collet [Tue, 28 Aug 2018 19:25:02 +0000 (12:25 -0700)]
Merge pull request #1298 from facebook/bench
Refactored bench.c
Yann Collet [Tue, 28 Aug 2018 18:26:46 +0000 (11:26 -0700)]
Merge branch 'bench' into largeNbDicts
Yann Collet [Tue, 28 Aug 2018 18:21:09 +0000 (11:21 -0700)]
timedFn : measurement delay is programmable
instead of hard-coded 1 second per measurement
Yann Collet [Tue, 28 Aug 2018 15:41:44 +0000 (08:41 -0700)]
Merge pull request #1299 from modbw/dev
Fixed memory leak detected by cppcheck
modbw [Tue, 28 Aug 2018 05:25:05 +0000 (07:25 +0200)]
Fixed memory leak detected by cppcheck
cppcheck (which is run regularly in our CI environment) detected a possible memory leak.
Yann Collet [Tue, 28 Aug 2018 02:07:17 +0000 (19:07 -0700)]
paramgrill: removed useless tests
designed to compensate iter_mode,
but since only time_mode is available now,
all tests are guaranteed to last a minimum amount of time.
Yann Collet [Tue, 28 Aug 2018 01:46:42 +0000 (18:46 -0700)]
paramgrill: fixed a bunch of div-by-zero
they were pretty easy to trigger by the way,
just start an extended paramgrill session
to find a compression table based on any sample,
it would necessarily happen at some point.
Yann Collet [Tue, 28 Aug 2018 00:52:04 +0000 (17:52 -0700)]
restored assert() in paramgrill
assert() in paramgrill are not in the benchmark path.
They should remain active, as they don't impact measurements, and their runtime is insignificant.
Yann Collet [Tue, 28 Aug 2018 00:08:44 +0000 (17:08 -0700)]
largeNbDicts can compress and compare dict vs noDict
Yann Collet [Mon, 27 Aug 2018 19:12:51 +0000 (12:12 -0700)]
Merge branch 'bench' into largeNbDicts
Yann Collet [Mon, 27 Aug 2018 04:30:18 +0000 (21:30 -0700)]
bench: minor api update, for consistency
BMK_benchTimedFn()
BMK_isCompleted_TimedFn() uses TimedFnState
Yann Collet [Mon, 27 Aug 2018 02:29:12 +0000 (19:29 -0700)]
first sketch for largeNbDicts test program
Yann Collet [Sat, 25 Aug 2018 04:38:09 +0000 (21:38 -0700)]
fixed minor warnings
valgrind: memory leak of a few bytes in fullbench
static analyzer: uninitialized data passed as result
Yann Collet [Sat, 25 Aug 2018 00:36:44 +0000 (17:36 -0700)]
Merge pull request #1297 from felixhandte/check-offset-table
Fix Missing Offset Table Check
Yann Collet [Sat, 25 Aug 2018 00:28:38 +0000 (17:28 -0700)]
bench: reduce nb of return type
runOutcome is enough
removed timedFnOutcome
Yann Collet [Fri, 24 Aug 2018 22:59:57 +0000 (15:59 -0700)]
fix minor warnings
gcc : prototype with 0 parameter must be labelled (void)
visual : const property must be identical in both declaration and implementation
W. Felix Handte [Fri, 24 Aug 2018 21:33:34 +0000 (14:33 -0700)]
Mark Repeated Offset Table as Needing Check
W. Felix Handte [Fri, 24 Aug 2018 21:30:21 +0000 (14:30 -0700)]
Add Failing Test
Yann Collet [Fri, 24 Aug 2018 19:40:10 +0000 (12:40 -0700)]
fixed fullbench behavior
now same as v1.3.5
Yann Collet [Fri, 24 Aug 2018 01:04:50 +0000 (18:04 -0700)]
fixed zstd -b speed result
the benchmark was displaying the speed of last run
instead of the best of all previous runs.
Nick Terrell [Thu, 23 Aug 2018 22:28:12 +0000 (15:28 -0700)]
Fix decodecorpus
Nick Terrell [Tue, 21 Aug 2018 21:38:24 +0000 (14:38 -0700)]
Fix compiler warning
Nick Terrell [Tue, 21 Aug 2018 21:20:21 +0000 (14:20 -0700)]
[zstd] Add note about empty ZSTD_CDict
Nick Terrell [Tue, 21 Aug 2018 21:20:02 +0000 (14:20 -0700)]
[zstd] Reuse the ZSTD_CCtx more often with small data.
Yann Collet [Fri, 24 Aug 2018 00:21:38 +0000 (17:21 -0700)]
fixed paramgrill
to work with new bench.c
Yann Collet [Thu, 23 Aug 2018 23:03:30 +0000 (16:03 -0700)]
introduced MB_UNIT
so that all benchmarking programs use the same speed scale