Commit Graph

1813 Commits

Author SHA1 Message Date
Jennifer Liu
fd1d59f7ba Removed duplicated circile.yml file 2018-06-26 14:48:58 -07:00
Jennifer Liu
e95706bb2a Fixed lz4 not found error part 2 2018-06-26 11:24:21 -07:00
Jennifer Liu
075952e340 Fixed lz4 not found error 2018-06-26 11:15:55 -07:00
Jennifer Liu
9f8fd09852 delete commented out code in bench.c 2018-06-26 10:49:39 -07:00
Jennifer Liu
db97528fe8 fix yml file 2018-06-26 10:33:15 -07:00
Jennifer Liu
17bcb58eb0 Fixed bug about file to be compressed is not present 2018-06-25 18:51:47 -07:00
Jennifer Liu
536b79afd9 Added --fast command to cli 2018-06-25 17:46:39 -07:00
Jennifer Liu
78978d655d set up sample .ysml 2018-06-20 13:37:49 -07:00
Yann Collet
1466e0b7f2
Merge pull request #543 from nrgiii/aix_32bit_fuzzer
Aix 32bit fuzzer
2018-06-01 14:40:22 -07:00
Norm Green
628c1fbb3c Merge branch 'master' of https://github.com/nrgiii/lz4 into aix_32bit_fuzzer 2018-06-01 12:00:41 -07:00
Norm Green
ebe7e35601 Fix AIX 32 bit build problem of fuzzer.c 2018-06-01 11:52:22 -07:00
Yann Collet
ef4f1e3047
Merge pull request #542 from wbx-github/dev
allow to override uname when cross-compiling
2018-05-29 14:20:48 -07:00
Yann Collet
6a5f8d5100
Merge pull request #541 from felixhandte/hc-extern-c
Add `extern "C"` Guard Around Experimental HC Declarations
2018-05-22 14:20:45 -07:00
Waldemar Brodkorb
6a7af839b8 allow to override uname when cross-compiling
When cross-compiling for example from Darwin to Linux it might be
useful to override uname output to force Linux and create Linux
libraries instead of Darwin libraries.
2018-05-22 20:38:28 +02:00
W. Felix Handte
b8211544ef Also Fix Appveyor Cast Warning 2018-05-22 11:44:15 -04:00
W. Felix Handte
4248a9bfc0 Add extern "C" Guards Around Experimental HC Declarations 2018-05-21 22:30:10 -04:00
W. Felix Handte
91888f472d Remove #define-rename of LZ4_decompress_safe_forceExtDict 2018-05-21 22:29:40 -04:00
W. Felix Handte
c746a27e91 Test Linking C-Compiled Library and C++-Compiled Tests 2018-05-21 22:29:20 -04:00
Yann Collet
843dfd239a
Merge pull request #540 from fbrosson/Haiku
Add Haiku as a validated target.
2018-05-17 10:48:32 -07:00
fbrosson
2149b1a8f6 Add Haiku as a validated target.
lz4 1.8.2 works fine on Haiku and passes all tests.
2018-05-17 16:52:53 +00:00
Yann Collet
b3692db46d
Merge pull request #531 from lz4/dev
Preparing v1.8.2
2018-05-07 14:38:45 -07:00
Yann Collet
bf6fd938e5
Merge pull request #537 from lz4/xpHCmf2
Speed optimization for optimal parser
2018-05-07 13:06:43 -07:00
Yann Collet
ba1c7148a5 renamed variable for clarity 2018-05-07 12:14:26 -07:00
Yann Collet
abb1f70e17
Merge pull request #538 from lz4/frameTestError
Fix frametest error
2018-05-07 11:33:53 -07:00
Yann Collet
200b2960d5 fixed minor conversion warning 2018-05-06 18:26:14 -07:00
Yann Collet
24b9c485db small PA optimization
which measurably improves speed
on levels 9+
2018-05-06 16:53:33 -07:00
Yann Collet
d7b6c726ed small extDict : fixed side-effect
don't fix dictionaries of size 0.
setting dictEnd == source triggers prefix mode,
thus removing possibility to use CDict.
2018-05-05 19:59:00 -07:00
Yann Collet
af12733467 fixed frametest error
The error can be reproduced using following command :
./frametest -v -i100000000 -s1659 -t31096808

It's actually a bug in the stream LZ4 API,
when starting a new stream
and providing a first chunk to complete with size < MINMATCH.
In which case, the chunk becomes a dictionary.
No hash was generated and stored,
but the chunk is accessible as default position 0 points to dictStart,
and position 0 is still within MAX_DISTANCE.
Then, next attempt to read 32-bits from position 0 fails.

The issue would have been mitigated by starting from index 64 KB,
effectively eliminating position 0 as too far away.

The proper fix is to eliminate such "dictionary" as too small.
Which is what this patch does.
2018-05-05 18:24:11 -07:00
Yann Collet
cdb0275b7f lz4hc: fixed PA / SC parameter order
also :
reserved PA for levels 9+ (instead of 8+).
In most cases, speed is lower, and compression benefit is not worth.
2018-05-05 14:32:57 -07:00
Yann Collet
a4e918d7a6 lz4hc: SC only enabled for opt parser
the trade off is not good for regular HC parser :
compression is a little bit better, but speed cost is too large in comparison.
2018-05-05 14:25:37 -07:00
Yann Collet
d097bf93f8 fixed SC.opt integration with regular HC parser
Only enabled when searching forward.

note : it slighly improves compression ratio,
but measurably decreases speed.
Trade-off to analyse.
2018-05-05 13:46:45 -07:00
Yann Collet
fa89a9e18b lz4hc: fixed performance issue
when combining both PA and CS optimizations
2018-05-05 13:31:03 -07:00
Yann Collet
9699ba5ddf integrated chain swapper into HC match finder
slower than expected
Pattern analyzer and Chain Swapper
work slower when both activated.
Reasons unclear.
2018-05-04 19:13:33 -07:00
Yann Collet
a39fa9c5fc
Merge pull request #536 from terrelln/make-install
Fix make install
2018-05-04 16:18:46 -07:00
Nick Terrell
3e7fa1b14d Attempt to fix travis 2018-05-04 14:33:59 -07:00
Nick Terrell
a7cc0b590a Fix make install
* Uninstall didn't remove the pkg-config correctly.
* Fix `mandir`
* Allow overriding either upper- or lower-case location variables, but
  always use the lower case variables.
* Add test case that ensures overriding both upper- and lower-case
  variables is the same, and that the directory is empty after uninstall.
2018-05-04 13:50:23 -07:00
Yann Collet
434ace7244 implemented search accelerator
greatly improves speed compared to non-accelerated,
especially for slower files.

On my laptop, -b12 :
```
calgary.tar :  4.3 MB/s =>  9.0 MB/s
enwik7      : 10.2 MB/s => 13.3 MB/s
silesia.tar :  4.0 MB/s =>  8.7 MB/s
```

Note : this is the simplified version,
without handling dictionaries, external buffer, nor pattern analyzer.
Current `dev` branch on these samples gives :
```
calgary.tar :  4.2 MB/s
enwik7      :  9.7 MB/s
silesia.tar :  3.5 MB/s
```

interestingly, it's slower,
presumably due to handling of dictionaries.
2018-05-03 16:31:41 -07:00
Yann Collet
d358e33faa Added CDict speed graph to be used for release statement 2018-05-03 16:01:24 -07:00
Yann Collet
e00ba49cde updated API documentation 2018-05-03 15:40:01 -07:00
Yann Collet
dc42707107 created LZ4HC_FindLongestMatch()
simplified match finder
only searching forward and within current buffer,
for easier testing of optimizations.
2018-05-03 15:38:32 -07:00
Yann Collet
f3e84ffd41
Merge pull request #529 from felixhandte/lz4f-fast-reset-for-streaming-only
LZ4F: Only Reset the LZ4_stream_t when Init'ing a Streaming Block
2018-05-03 15:37:51 -07:00
Yann Collet
2b6c4f3d63
Merge pull request #530 from lz4/lz4fRingBuffer
Random lz4f clarifications
2018-05-03 12:55:04 -07:00
Yann Collet
ffbff1f360 Merge branch 'dev' into lz4fRingBuffer 2018-05-03 11:54:57 -07:00
Yann Collet
95607a749b
Merge pull request #528 from lz4/complexShortcut
Faster decoding speed
2018-05-03 11:35:50 -07:00
Cyan4973
2e2c9f6ff3 fix comments / indentation
as requested by @terrelln
2018-05-03 07:56:33 -07:00
W. Felix Handte
5406c2e479 Only Reset the LZ4 Stream when Init'ing a Streaming Block 2018-05-03 00:03:20 -04:00
Yann Collet
1e130d23e3 updated NEWS in preparation for v1.8.2 2018-05-02 16:52:33 -07:00
Yann Collet
79af95a5b3 Merge branch 'lz4fRingBuffer' of github.com:Cyan4973/lz4 into lz4fRingBuffer 2018-05-02 16:43:51 -07:00
Yann Collet
ba168ee5c7 updated benchmark for v1.8.2 2018-05-02 16:43:05 -07:00
Yann Collet
543223851f updated benchmark for v1.8.2 2018-05-02 16:41:15 -07:00