Reto Koradi
cc91777c98
Make benchmark compatible with dictionary compression
...
Support the -D command line option for running benchmarks. The
benchmark code was slightly restructured to factor out the calls
that need to be different for each benchmark scenario. Since there
are now 4 scenarios (all combinations of fast/HC and with/without
dictionary), the logic was getting somewhat convoluted otherwise.
This was done by extending the compressionParameters struct that
previously contained just a single function pointer. It now
contains 4 function pointers for init/reset/compress/cleanup,
with the related state. The functions get a pointer to the
structure as their first argument (inspired by C++), so that they
can access the state values in the struct.
2019-11-05 23:38:00 -08:00
Yann Collet
4f6de46f60
fix several minor static analyzer warnings
2019-04-18 12:05:50 -07:00
Yann Collet
2e4847c2d5
fixed #560
...
it was a fairly complex scenario,
involving source files > 64K
and some extraordinary conditions related to specific layout of ranges of zeroes.
and only on level 9.
2018-09-04 18:21:40 -07:00
Jennifer Liu
e778db373b
Fixed bugs about incorrect acceleration calculation and benchmarking negative compresion level
2018-06-27 13:36:38 -07:00
Jennifer Liu
9ee5183d9b
Fixed code based on comments from pull request
2018-06-26 17:31:15 -07:00
Jennifer Liu
9f8fd09852
delete commented out code in bench.c
2018-06-26 10:49:39 -07:00
Jennifer Liu
536b79afd9
Added --fast command to cli
2018-06-25 17:46:39 -07:00
Yann Collet
1faa7e2698
bench: introduced hidden command -S
...
to benchmark multiple files with separate results
2018-03-19 17:19:25 -07:00
Yann Collet
179670f32f
use TIMELOOP_NANOSEC,
...
as suggested by @terrelln
2018-02-20 15:26:59 -08:00
Yann Collet
34c1634d4b
fixed minor conversion warning
2018-02-20 14:13:13 -08:00
Yann Collet
ae3dededed
ensure bench speed measurement is more accurate for small inputs
...
Previous method would produce too many time() invocations,
becoming a significant fraction of workload measured.
The new strategy is to use time() only once per batch,
and dynamically resize batch size so that each round lasts approximately 1 second.
This only matters for small inputs.
Measurement for large files (such as silesia.tar) are much less impacted
(though decoding speed is so fast that even medium-size files will notice an improvement).
2018-02-20 13:09:13 -08:00
Yann Collet
1a233c5f0f
update bench.c to use less time invocations
...
translating into more accurate speed measurements for small sources
2018-02-20 11:37:19 -08:00
Nick Terrell
74d8688bc8
[bench] Use higher resolution timer on POSIX
...
The timer used was only accurate up to 0.01 seconds. This timer is accurate up to 1 ns.
It is a monotonic timer that measures the real time difference, not on CPU time.
Copied the benchmark code from 6ab4d5e904
2017-10-17 13:55:35 -07:00
Yann Collet
a30cba08f4
fixed a bunch of -Wcomma warnings
...
reported by @rvandermeulen (#398 )
2017-09-10 14:32:38 -07:00
Yann Collet
00418f7611
bench : made decompression speed evaluation same time as compression
...
minor : slightly modified an example do avoid disabling a gcc warning through #pragma
2017-09-07 12:12:36 -07:00
Przemyslaw Skibinski
cb1671955a
bench.c: respect LZ4_MAX_INPUT_SIZE limit
2017-03-10 20:49:25 +01:00
Przemyslaw Skibinski
40ad1e85d4
upgraded util.h
2017-02-15 17:16:15 +01:00
Chocobo1
db6f733ecc
Use logical or instead of bitwise or
2017-01-13 00:43:25 +08:00
Yann Collet
b41f9bb132
Merge pull request #292 from inikep/dev
...
improved POSIX
2016-12-22 11:58:29 +01:00
Yann Collet
52cac9a973
updated a few macros names
2016-12-22 11:41:05 +01:00
Przemyslaw Skibinski
f084b65383
test Large File support for Mac OS-X in 32-bits mode
2016-12-21 17:13:38 +01:00
Przemyslaw Skibinski
2cfef13952
executables use platform.h
2016-12-20 18:05:43 +01:00
Przemyslaw Skibinski
7b6a9d8638
Merge remote-tracking branch 'refs/remotes/lz4/dev' into dev
2016-11-16 09:01:45 +01:00
Yann Collet
d2be69b144
fixed minor coverity warnings
2016-11-15 14:46:57 -08:00
Przemyslaw Skibinski
2278d1f02f
custom block size
2016-11-10 16:31:10 +01:00
Yann Collet
f34808e4ae
fixed some static analyzer warning
2016-11-09 17:39:53 -08:00
Yann Collet
1b95d60c66
fixed synthetic benchmark mode
...
slightly optimized test mode
2016-11-09 15:04:55 -08:00
Przemyslaw Skibinski
fbede33fd7
fixed Travis tests
2016-11-04 16:56:01 +01:00
Przemyslaw Skibinski
e8a6067e8a
updated lz4cli.c
2016-11-04 14:46:45 +01:00
Przemyslaw Skibinski
8b8c726a5c
bench.c based on zstd
2016-11-04 14:26:12 +01:00
Przemyslaw Skibinski
84cedb4632
updated links to LZ4 repository
2016-11-03 15:12:57 +01:00
Yann Collet
64f556e610
lz4cli version number from lz4.h
2016-09-02 19:32:06 -07:00
inikep
b3ae49c7bf
added <string.h> for strlen()
2016-09-02 23:02:30 +02:00
inikep
2cf32ef0f1
-b# and -e# options from zstd
2016-09-02 22:59:18 +02:00
inikep
c1864f69e8
fix mingw64 compilation warnings
2016-09-02 21:50:57 +02:00
Yann Collet
b130fd5923
minor refactoring changes
2016-08-10 08:26:49 +02:00
Yann Collet
6b1600f41e
changed : default benchmark LZ4_decompress_safe()
2016-06-29 17:48:28 +02:00
Yann Collet
a5508b1ad2
fixed display result issue when benchmarking multiple files
2016-06-29 14:56:50 +02:00
Yann Collet
e27e7316dd
minor code refactoring
2016-06-29 14:54:07 +02:00
Yann Collet
2d7df8b306
Reduced bench dependency to standard C <time.h>
...
Faster tests
More accurate results on systems with high resolution clocks
2016-06-29 14:35:19 +02:00
Yann Collet
8938e10742
minor compression speed improvement
2016-06-29 14:07:54 +02:00
Yann Collet
e05088d0eb
Updated lz4hc API
2015-05-03 20:57:21 +01:00
Yann Collet
1b17bf2ab8
New lz4 API, using LZ4_compress_fast()
2015-05-03 17:57:46 +01:00
Yann Collet
f11afafe23
Removed LZ4_compress() (obsolete) from lz4
2015-04-21 18:31:35 +01:00
Yann Collet
8a610004f6
Fixed a few coverity warnings
2015-04-12 09:42:58 +01:00
Yann Collet
62ed153195
Fixed : a few minor coverity warnings
2015-04-12 08:21:35 +01:00
Yann Collet
f344fbd3ca
Fixed a few warnings from -fsanitize=undefined
2015-04-09 22:59:07 +01:00
Yann Collet
7f436a1215
lz4 cli supports frame content size
2015-03-23 02:20:42 +01:00
Yann Collet
45b0642bf5
scan-build tests
2015-03-15 01:42:27 +01:00
Yann Collet
45a357fd17
Improved sparse file support
2015-03-13 02:24:08 +01:00