]>
git.ipfire.org Git - thirdparty/zstd.git/log
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 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
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
Yann Collet [Thu, 23 Aug 2018 21:28:51 +0000 (14:28 -0700)]
update fullbench.c to work with new bench.h
Yann Collet [Thu, 23 Aug 2018 21:21:18 +0000 (14:21 -0700)]
refactored bench.c
for clarity and safety, especially at interface level
Jennifer Liu [Thu, 23 Aug 2018 19:26:30 +0000 (12:26 -0700)]
Merge branch 'dev' of github.com:facebook/zstd into dev
Jennifer Liu [Thu, 23 Aug 2018 19:06:20 +0000 (12:06 -0700)]
Merge fastCover into DictBuilder (#1274)
* Minor fix
* Run non-optimize FASTCOVER 5 times in benchmark
* Merge fastCover into dictBuilder
* Fix mixed declaration issue
* Add fastcover to symbol.c
* Add fastCover.c and cover.h to build
* Change fastCover.c to fastcover.c
* Update benchmark to run FASTCOVER in dictBuilder
* Undo spliting fastcover_param into cover_param and f
* Remove convert param functions
* Assign f to parameter
* Add zdict.h to Makefile in lib
* Add cover.h to BUCK
* Cast 1 to U64 before shifting
* Remove trimming of zero freq head and tail in selectSegment and rebenchmark
* Remove f as a separate parameter of tryParam
* Read 8 bytes when d is 6
* Add trimming off zero frequency head and tail
* Use best functions from COVER and remove trimming part(which leads to worse compression ratio after previous bugs were fixed)
* Add finalize= argument to FASTCOVER to specify percentage of training samples passed to ZDICT_finalizeDictionary
* Change nbDmer to always read 8 bytes even when d=6
* Add skip=# argument to allow skipping dmers in computeFrequency in FASTCOVER
* Update comments and benchmarking result
* Change default method of ZDICT_trainFromBuffer to ZDICT_optimizeTrainFromBuffer_fastCover
* Add dictType enum and fix bug about passing zParam when converting to coverParam
* Combine finalize and skip into a single parameter
* Update acceleration parameters and benchmark on 3 sample sets
* Change default splitPoint of FASTCOVER to 0.75 and benchmark first 3 sample sets
* Initialize variables outside of for loop in benchmark.c
* Update benchmark result for hg-manifest
* Remove cover.h from install-includes
* Add explanation of f
* Set default compression level for trainFromBuffer to 3
* Add assertion of fastCoverParams in DiB_trainFromFiles
* Add checkTotalCompressedSize function + some minor fixes
* Add test for multithreading fastCovr
* Initialize segmentFreqs in every FASTCOVER_selectSegment and move mutex_unnlock to end of COVER_best_finish
* Free segmentFreqs
* Initialize segmentFreqs before calling FASTCOVER_buildDictionary instead of in FASTCOVER_selectSegment
* Add FASTCOVER_MEMMULT
* Minor fix
* Update benchmarking result
Yann Collet [Wed, 22 Aug 2018 01:19:27 +0000 (18:19 -0700)]
bench: changed creation/reset function to timedFnState
for consistency
Yann Collet [Tue, 21 Aug 2018 21:48:50 +0000 (14:48 -0700)]
Merge pull request #1287 from tgurr/cmake-docdir
Use GNUInstallDirs DOCDIR for installing the manual
Yann Collet [Tue, 21 Aug 2018 20:18:44 +0000 (13:18 -0700)]
Merge pull request #1290 from edenzik/ezik/1119-safe-strcpy-in-fileio
Fixed unsafe string copy and concat in `fileio.c`.
Eden Zik [Tue, 21 Aug 2018 02:15:24 +0000 (22:15 -0400)]
Fixed unsafe string copy and concat in `fileio.c`.
Per warnings from flawfinder: "Does not check for buffer overflows when
copying to destination [MS-banned] (CWE-120). Consider using snprintf,
strcpy_s, or strlcpy (warning: strncpy easily misused).".
Replaced called to strcpy and strcat in `fileio.c` to calls with a
specified size (`strncpy` and `strncat`).
Tested the changes on OSX, Linux, Windows.
On OSX + Linux, changes were tested with ASAN. The following flags were
used: 'check_initialization_order=1:strict_init_order=1:detect_odr_violation=1:detect_stack_use_after_return=1'
To reproduce warning:
./flawfinder.py ./programs/fileio.c
Yann Collet [Fri, 17 Aug 2018 23:38:41 +0000 (16:38 -0700)]
Merge pull request #1285 from facebook/scanbuild
static analyzer tests
Timo Gurr [Fri, 17 Aug 2018 11:31:55 +0000 (13:31 +0200)]
Use GNUInstallDirs DOCDIR for installing the manual
Yann Collet [Fri, 17 Aug 2018 01:20:37 +0000 (18:20 -0700)]
Merge pull request #1284 from GeorgeLu97/negativeLvlDisplay
Fix negative lvl display value
George Lu [Fri, 17 Aug 2018 00:22:29 +0000 (17:22 -0700)]
Clarify README
George Lu [Thu, 16 Aug 2018 23:13:02 +0000 (16:13 -0700)]
Fix negative lvl display value
Also fix synthetic benchmark parameter setting
Yann Collet [Thu, 16 Aug 2018 22:41:56 +0000 (15:41 -0700)]
Makefile: added variable SCANBUILD
so that a different version of scan-build can be selected
Yann Collet [Thu, 16 Aug 2018 21:40:47 +0000 (14:40 -0700)]
fixed more issues detected by recent version of scan-build
test run on Linux
Yann Collet [Thu, 16 Aug 2018 00:56:45 +0000 (17:56 -0700)]
Merge pull request #1281 from GeorgeLu97/cleanUp
Clean up paramgrill code
Yann Collet [Thu, 16 Aug 2018 00:44:27 +0000 (17:44 -0700)]
added static analyzer tests to travis CI
Yann Collet [Thu, 16 Aug 2018 00:41:44 +0000 (17:41 -0700)]
fix scope of scan-build tests
exclude zlib code
Yann Collet [Wed, 15 Aug 2018 23:43:13 +0000 (16:43 -0700)]
ensure dependency for zlib wrapper
George Lu [Wed, 15 Aug 2018 22:01:03 +0000 (15:01 -0700)]
prune comments
George Lu [Wed, 15 Aug 2018 21:57:10 +0000 (14:57 -0700)]
Move Stuff around
Group similar functions together, remove outdated comments
George Lu [Wed, 15 Aug 2018 21:27:07 +0000 (14:27 -0700)]
consts
George Lu [Wed, 15 Aug 2018 21:00:57 +0000 (14:00 -0700)]
Remove unused stuff
Yann Collet [Wed, 15 Aug 2018 22:20:56 +0000 (15:20 -0700)]
Merge pull request #1280 from GeorgeLu97/betterDisplay
Better Paramgrill Display
Yann Collet [Wed, 15 Aug 2018 21:35:38 +0000 (14:35 -0700)]
fixed minor warnings issued by scan-build
George Lu [Wed, 15 Aug 2018 21:29:49 +0000 (14:29 -0700)]
clarify display README
George Lu [Wed, 15 Aug 2018 18:46:19 +0000 (11:46 -0700)]
Fix wraparound
George Lu [Wed, 15 Aug 2018 01:04:58 +0000 (18:04 -0700)]
silencing params
George Lu [Tue, 14 Aug 2018 23:51:39 +0000 (16:51 -0700)]
Clean up repetitive display
Add documentation
George Lu [Tue, 14 Aug 2018 22:54:07 +0000 (15:54 -0700)]
-q -v options
George Lu [Tue, 14 Aug 2018 21:24:05 +0000 (14:24 -0700)]
begin display changes
Yann Collet [Tue, 14 Aug 2018 23:56:07 +0000 (16:56 -0700)]
Merge branch 'dev' into scanbuild
Yann Collet [Wed, 15 Aug 2018 20:45:17 +0000 (13:45 -0700)]
Merge pull request #1277 from GeorgeLu97/mtoptions
memoTableOptions
George Lu [Mon, 13 Aug 2018 19:51:22 +0000 (12:51 -0700)]
Add memoTable options
-hashing memotable
-no memotable
Yann Collet [Tue, 14 Aug 2018 19:56:21 +0000 (12:56 -0700)]
fixed several minor issues detected by scan-build
only notable one :
writeNCount() resists better vs invalid distributions
(though it should never happen within zstd anyway)
Yann Collet [Tue, 14 Aug 2018 23:44:28 +0000 (16:44 -0700)]
Merge pull request #1279 from GeorgeLu97/benchSA
Fix scan-build warnings in bench.c
George Lu [Fri, 10 Aug 2018 23:14:12 +0000 (16:14 -0700)]
MAke it easier to add params
Make memoTable size limited
George Lu [Thu, 9 Aug 2018 23:36:34 +0000 (16:36 -0700)]
Temp fix perf regression
Yann Collet [Tue, 14 Aug 2018 23:06:18 +0000 (16:06 -0700)]
Merge pull request #1276 from GeorgeLu97/fadt
forceAttachDict