]> git.ipfire.org Git - thirdparty/zstd.git/log
thirdparty/zstd.git
8 years agoMerge pull request #758 from stellamplau/ldm
Yann Collet [Sat, 29 Jul 2017 00:07:21 +0000 (17:07 -0700)] 
Merge pull request #758 from stellamplau/ldm

Add working prototype of a long distance matcher

8 years agoReturn error code in verify() and minor code cleanup 758/head
Stella Lau [Fri, 28 Jul 2017 00:14:05 +0000 (17:14 -0700)] 
Return error code in verify() and minor code cleanup

8 years agoFix typo
Stella Lau [Thu, 27 Jul 2017 22:49:46 +0000 (15:49 -0700)] 
Fix typo

8 years agoAdd checks in initialization code
Stella Lau [Thu, 27 Jul 2017 22:37:37 +0000 (15:37 -0700)] 
Add checks in initialization code

8 years agoUpdate README
Stella Lau [Thu, 27 Jul 2017 18:11:35 +0000 (11:11 -0700)] 
Update README

8 years agoMerge pull request #753 from paulcruz74/adapt-approach-3
Yann Collet [Thu, 27 Jul 2017 17:00:10 +0000 (10:00 -0700)] 
Merge pull request #753 from paulcruz74/adapt-approach-3

adaptive compression v1

8 years agoremove unused variable, add documentation for context fields 753/head
Paul Cruz [Thu, 27 Jul 2017 00:02:47 +0000 (17:02 -0700)] 
remove unused variable, add documentation for context fields

8 years agoAllow HASH_ONLY_EVERY_LOG to be configured in ldm.h
Stella Lau [Wed, 26 Jul 2017 23:43:25 +0000 (16:43 -0700)] 
Allow HASH_ONLY_EVERY_LOG to be configured in ldm.h

8 years agofix leaky abstraction regarding measuring completion
Paul Cruz [Wed, 26 Jul 2017 23:40:05 +0000 (16:40 -0700)] 
fix leaky abstraction regarding measuring completion

8 years agoadded definitions for conversion constants, moved forced compression check to top...
Paul Cruz [Wed, 26 Jul 2017 22:52:15 +0000 (15:52 -0700)] 
added definitions for conversion constants, moved forced compression check to top of adaptCompressionLevel, used ZSTD_BLOCKSIZE_MAX

8 years agoset the window log value before performing compression
Paul Cruz [Wed, 26 Jul 2017 21:29:59 +0000 (14:29 -0700)] 
set the window log value before performing compression

8 years agoAdd README and clean up code
Stella Lau [Wed, 26 Jul 2017 20:18:53 +0000 (13:18 -0700)] 
Add README and clean up code

8 years agomoved reset of completion to right after wait
Paul Cruz [Wed, 26 Jul 2017 17:34:48 +0000 (10:34 -0700)] 
moved reset of completion to right after wait

8 years agochange to >= convergence counter
Paul Cruz [Wed, 26 Jul 2017 17:20:29 +0000 (10:20 -0700)] 
change to >= convergence counter

8 years agodecrease completion requirements for change, move create thread wait, merge cases...
Paul Cruz [Wed, 26 Jul 2017 17:05:10 +0000 (10:05 -0700)] 
decrease completion requirements for change, move create thread wait, merge cases where compression thread should wait

8 years agoAllow parameters to be modified from a separate file
Stella Lau [Wed, 26 Jul 2017 01:13:27 +0000 (18:13 -0700)] 
Allow parameters to be modified from a separate file

8 years agobuilding on readme, added another help tip in the menu
Paul Cruz [Wed, 26 Jul 2017 00:47:02 +0000 (17:47 -0700)] 
building on readme, added another help tip in the menu

8 years agoadding more to readme
Paul Cruz [Tue, 25 Jul 2017 23:55:16 +0000 (16:55 -0700)] 
adding more to readme

8 years agoupdated progress bar with better representation of time, added const
Paul Cruz [Tue, 25 Jul 2017 23:03:43 +0000 (16:03 -0700)] 
updated progress bar with better representation of time, added const

8 years agochanging time units to seconds
Paul Cruz [Tue, 25 Jul 2017 22:26:26 +0000 (15:26 -0700)] 
changing time units to seconds

8 years agoRename and remove unneeded files
Stella Lau [Tue, 25 Jul 2017 22:17:36 +0000 (15:17 -0700)] 
Rename and remove unneeded files

8 years agoupdated const values, added more comments
Paul Cruz [Tue, 25 Jul 2017 21:53:40 +0000 (14:53 -0700)] 
updated const values, added more comments

8 years agoMerge pull request #776 from terrelln/dev
Yann Collet [Tue, 25 Jul 2017 21:39:32 +0000 (14:39 -0700)] 
Merge pull request #776 from terrelln/dev

[libzstd] Fix CHECK_V_F() macro

8 years agoremoved old debug statements no longer being used
Paul Cruz [Tue, 25 Jul 2017 21:31:48 +0000 (14:31 -0700)] 
removed old debug statements no longer being used

8 years agoprogress bar -- don't print num jobs, time elapsed shown in seconds
Paul Cruz [Tue, 25 Jul 2017 21:26:55 +0000 (14:26 -0700)] 
progress bar -- don't print num jobs, time elapsed shown in seconds

8 years agomoved debug statements to a compiler flag
Paul Cruz [Tue, 25 Jul 2017 21:08:39 +0000 (14:08 -0700)] 
moved debug statements to a compiler flag

8 years ago[libzstd] Fix CHECK_V_F macros 776/head
Nick Terrell [Tue, 25 Jul 2017 19:52:01 +0000 (12:52 -0700)] 
[libzstd] Fix CHECK_V_F macros

8 years agostarted using decrease cooldown so that compression level would not decrease several...
Paul Cruz [Tue, 25 Jul 2017 18:16:27 +0000 (11:16 -0700)] 
started using decrease cooldown so that compression level would not decrease several times in a row

8 years agocreated independent function for controlling how completion relates to compression...
Paul Cruz [Tue, 25 Jul 2017 17:32:14 +0000 (10:32 -0700)] 
created independent function for controlling how completion relates to compression level change

8 years agoadded mechanism for getting rid of spikes
Paul Cruz [Tue, 25 Jul 2017 17:01:10 +0000 (10:01 -0700)] 
added mechanism for getting rid of spikes

8 years agoadded help statement for -p, switched it to hide progress bar now that progress bar...
Paul Cruz [Mon, 24 Jul 2017 23:26:20 +0000 (16:26 -0700)] 
added help statement for -p, switched it to hide progress bar now that progress bar is default

8 years agoadd quiet option, make progress bar default
Paul Cruz [Mon, 24 Jul 2017 23:19:07 +0000 (16:19 -0700)] 
add quiet option, make progress bar default

8 years agoExperiment with not using a checksum
Stella Lau [Mon, 24 Jul 2017 22:26:44 +0000 (15:26 -0700)] 
Experiment with not using a checksum

8 years agocompression thread should take measurements independently based on whether or not...
Paul Cruz [Mon, 24 Jul 2017 22:14:58 +0000 (15:14 -0700)] 
compression thread should take measurements independently based on whether or not the create/write thread will actually bottleneck performance

8 years agoadding more debug
Paul Cruz [Mon, 24 Jul 2017 22:06:11 +0000 (15:06 -0700)] 
adding more debug

8 years agoupdating debug statements again
Paul Cruz [Mon, 24 Jul 2017 21:40:23 +0000 (14:40 -0700)] 
updating debug statements again

8 years agochanging position of endline for debug
Paul Cruz [Mon, 24 Jul 2017 20:47:39 +0000 (13:47 -0700)] 
changing position of endline for debug

8 years agoMinor code cleanup
Stella Lau [Mon, 24 Jul 2017 20:22:00 +0000 (13:22 -0700)] 
Minor code cleanup

8 years agoDeduplicate code
Stella Lau [Mon, 24 Jul 2017 19:40:59 +0000 (12:40 -0700)] 
Deduplicate code

8 years agoExperiment with eviction policies and minor code cleanup
Stella Lau [Mon, 24 Jul 2017 19:05:43 +0000 (12:05 -0700)] 
Experiment with eviction policies and minor code cleanup

8 years agoupdated comments and debug statements
Paul Cruz [Mon, 24 Jul 2017 18:01:36 +0000 (11:01 -0700)] 
updated comments and debug statements

8 years agoMinor clean up
Stella Lau [Mon, 24 Jul 2017 17:18:58 +0000 (10:18 -0700)] 
Minor clean up

8 years agoFix overflow bug when calculating hash
Stella Lau [Fri, 21 Jul 2017 17:44:39 +0000 (10:44 -0700)] 
Fix overflow bug when calculating hash

8 years agoExperiment with 64-bit hash insertion policy
Stella Lau [Thu, 20 Jul 2017 23:51:01 +0000 (16:51 -0700)] 
Experiment with 64-bit hash insertion policy

8 years agoExperiment with 64-bit hash and checksum
Stella Lau [Thu, 20 Jul 2017 23:50:06 +0000 (16:50 -0700)] 
Experiment with 64-bit hash and checksum

8 years agoreduced competition for completion mutex by separating mutex use based on which value...
Paul Cruz [Sun, 23 Jul 2017 21:09:16 +0000 (14:09 -0700)] 
reduced competition for completion mutex by separating mutex use based on which values is updated

8 years agochange how completion is measured in compression thread
Paul Cruz [Sun, 23 Jul 2017 17:18:54 +0000 (10:18 -0700)] 
change how completion is measured in compression thread

8 years agoremoved useless measurements
Paul Cruz [Sat, 22 Jul 2017 01:02:55 +0000 (18:02 -0700)] 
removed useless measurements

8 years agoswitched over to model where reading only waits on compression thread
Paul Cruz [Sat, 22 Jul 2017 00:49:39 +0000 (17:49 -0700)] 
switched over to model where reading only waits on compression thread

8 years agotaking the maximum of the completion level reads in order to determine which one...
Paul Cruz [Fri, 21 Jul 2017 23:05:01 +0000 (16:05 -0700)] 
taking the maximum of the completion level reads in order to determine which one was waiting more

8 years agoupdating debug statements
Paul Cruz [Fri, 21 Jul 2017 21:06:24 +0000 (14:06 -0700)] 
updating debug statements

8 years agomeasure multiple completion levels during each wait
Paul Cruz [Fri, 21 Jul 2017 20:38:24 +0000 (13:38 -0700)] 
measure multiple completion levels during each wait

8 years agoadded bounding to compression level change
Paul Cruz [Fri, 21 Jul 2017 16:30:24 +0000 (09:30 -0700)] 
added bounding to compression level change

8 years agoadded priority decision making for adapt compression level
Paul Cruz [Fri, 21 Jul 2017 16:26:35 +0000 (09:26 -0700)] 
added priority decision making for adapt compression level

8 years agosemi working version that stabilizes
Paul Cruz [Fri, 21 Jul 2017 01:45:33 +0000 (18:45 -0700)] 
semi working version that stabilizes

8 years agofixed minor warning on unused variable in shell function
Yann Collet [Fri, 21 Jul 2017 01:39:04 +0000 (18:39 -0700)] 
fixed minor warning on unused variable in shell function

8 years agofixed bug where writeSize could be zero
Paul Cruz [Thu, 20 Jul 2017 23:38:02 +0000 (16:38 -0700)] 
fixed bug where writeSize could be zero

8 years agoreworked adaptCompressionLevel to only account for completion information
Paul Cruz [Thu, 20 Jul 2017 23:19:16 +0000 (16:19 -0700)] 
reworked adaptCompressionLevel to only account for completion information

8 years agoVisual blind fix 2
Yann Collet [Thu, 20 Jul 2017 22:57:55 +0000 (15:57 -0700)] 
Visual blind fix 2

8 years agoMerge branch 'dev' of github.com:facebook/zstd into dev
Yann Collet [Thu, 20 Jul 2017 22:12:21 +0000 (15:12 -0700)] 
Merge branch 'dev' of github.com:facebook/zstd into dev

8 years agofixed fuzzer test for non OS-X platforms
Yann Collet [Thu, 20 Jul 2017 22:11:56 +0000 (15:11 -0700)] 
fixed fuzzer test for non OS-X platforms

8 years agoMerge pull request #773 from terrelln/lk-v3
Yann Collet [Thu, 20 Jul 2017 21:47:26 +0000 (14:47 -0700)] 
Merge pull request #773 from terrelln/lk-v3

[linux] Update patches for v3

8 years ago[linux] Update patches for v3 773/head
Nick Terrell [Thu, 20 Jul 2017 20:33:55 +0000 (13:33 -0700)] 
[linux] Update patches for v3

8 years agochanged how completion is actually sampled
Paul Cruz [Thu, 20 Jul 2017 17:53:51 +0000 (10:53 -0700)] 
changed how completion is actually sampled

8 years agopool.c : blindfix for Visual warnings
Yann Collet [Thu, 20 Jul 2017 08:13:14 +0000 (01:13 -0700)] 
pool.c : blindfix for Visual warnings

8 years agoFix off-by-one in size calculations
Stella Lau [Thu, 20 Jul 2017 00:24:09 +0000 (17:24 -0700)] 
Fix off-by-one in size calculations

8 years agoMinor refactoring
Stella Lau [Wed, 19 Jul 2017 23:56:28 +0000 (16:56 -0700)] 
Minor refactoring

8 years agomake adaptCompressionLevel oscillate less
Paul Cruz [Wed, 19 Jul 2017 23:36:33 +0000 (16:36 -0700)] 
make adaptCompressionLevel oscillate less

8 years agoadded --memtest=# command to fuzzer
Yann Collet [Wed, 19 Jul 2017 23:01:16 +0000 (16:01 -0700)] 
added --memtest=# command to fuzzer

to jump directly to relevant test section

8 years agocall ZSTD_compressBegin() once
Paul Cruz [Wed, 19 Jul 2017 23:00:54 +0000 (16:00 -0700)] 
call ZSTD_compressBegin() once

8 years agofixing error when file size is multiple of job size (in which case, the srcSize of...
Paul Cruz [Wed, 19 Jul 2017 21:54:15 +0000 (14:54 -0700)] 
fixing error when file size is multiple of job size (in which case, the srcSize of the last job is 0)

8 years agoExperiment with integrating ZSTD_count with findBestMatch
Stella Lau [Wed, 19 Jul 2017 21:14:26 +0000 (14:14 -0700)] 
Experiment with integrating ZSTD_count with findBestMatch

8 years agoblind fix for Windows Multithreading module
Yann Collet [Wed, 19 Jul 2017 20:33:21 +0000 (13:33 -0700)] 
blind fix for Windows Multithreading module

adds a fake 0 return value for mutex/cond init

8 years agoadded some debug statements, adjusted end condition
Paul Cruz [Wed, 19 Jul 2017 20:30:07 +0000 (13:30 -0700)] 
added some debug statements, adjusted end condition

8 years agoremoved previous version of completion for compression
Paul Cruz [Wed, 19 Jul 2017 18:51:50 +0000 (11:51 -0700)] 
removed previous version of completion for compression

8 years agoset up new calculations compression completion progress
Paul Cruz [Wed, 19 Jul 2017 18:47:17 +0000 (11:47 -0700)] 
set up new calculations compression completion progress

8 years agosplit compression into smaller blocks
Paul Cruz [Wed, 19 Jul 2017 18:23:40 +0000 (11:23 -0700)] 
split compression into smaller blocks

8 years agomoved compression adapt to avoid warning
Paul Cruz [Wed, 19 Jul 2017 17:23:46 +0000 (10:23 -0700)] 
moved compression adapt to avoid warning

8 years agochange compression level only right before actually performing compression. When...
Paul Cruz [Wed, 19 Jul 2017 17:14:00 +0000 (10:14 -0700)] 
change compression level only right before actually performing compression. When waiting, only update waiting statistics.

8 years agoadded mechanism for measuring how much of a job has been created
Paul Cruz [Wed, 19 Jul 2017 17:10:47 +0000 (10:10 -0700)] 
added mechanism for measuring how much of a job has been created

8 years agosplit up read process into smaller chunks
Paul Cruz [Wed, 19 Jul 2017 16:59:17 +0000 (09:59 -0700)] 
split up read process into smaller chunks

8 years agoadded additional print for help menu
Paul Cruz [Wed, 19 Jul 2017 16:43:17 +0000 (09:43 -0700)] 
added additional print for help menu

8 years agocheck pthread_*_init() success condition
Yann Collet [Wed, 19 Jul 2017 08:05:40 +0000 (01:05 -0700)] 
check pthread_*_init() success condition

8 years agoAvoid recounting match lengths with ZSTD_count
Stella Lau [Wed, 19 Jul 2017 01:35:25 +0000 (18:35 -0700)] 
Avoid recounting match lengths with ZSTD_count

8 years agoSwitch to using ZSTD_count instead of function pointer
Stella Lau [Wed, 19 Jul 2017 01:05:10 +0000 (18:05 -0700)] 
Switch to using ZSTD_count instead of function pointer

8 years agochanged createCCtx() to split into initialization and creation
Paul Cruz [Wed, 19 Jul 2017 00:32:36 +0000 (17:32 -0700)] 
changed createCCtx() to split into initialization and creation

8 years agoadded mutex for stats struct
Paul Cruz [Tue, 18 Jul 2017 22:55:58 +0000 (15:55 -0700)] 
added mutex for stats struct

8 years agoMerge pull request #770 from terrelln/test-mode
Yann Collet [Tue, 18 Jul 2017 22:40:59 +0000 (15:40 -0700)] 
Merge pull request #770 from terrelln/test-mode

[zstdcli] Fix -t in streaming mode

8 years agoadded progress check for filewriting, put important shared data behind mutex when...
Paul Cruz [Tue, 18 Jul 2017 22:23:11 +0000 (15:23 -0700)] 
added progress check for filewriting, put important shared data behind mutex when being read from/written to

8 years agoMerge pull request #769 from terrelln/real-block-split
Yann Collet [Tue, 18 Jul 2017 21:58:26 +0000 (14:58 -0700)] 
Merge pull request #769 from terrelln/real-block-split

[libzstd] Fix bug in Huffman encoding

8 years ago[zstdcli] Fix -t in streaming mode 770/head
Nick Terrell [Tue, 18 Jul 2017 21:45:49 +0000 (14:45 -0700)] 
[zstdcli] Fix -t in streaming mode

8 years agoMake the meaning of LDM_MEMORY_USAGE consistent across tables
Stella Lau [Tue, 18 Jul 2017 21:25:39 +0000 (14:25 -0700)] 
Make the meaning of LDM_MEMORY_USAGE consistent across tables

8 years agosetting up basic readme
Paul Cruz [Tue, 18 Jul 2017 20:31:02 +0000 (13:31 -0700)] 
setting up basic readme

8 years agorename completion variable, split up fwrite operations in order to track progress
Paul Cruz [Tue, 18 Jul 2017 20:30:29 +0000 (13:30 -0700)] 
rename completion variable, split up fwrite operations in order to track progress

8 years ago[libzstd] Fix bug in Huffman encoding 769/head
Nick Terrell [Tue, 18 Jul 2017 18:21:19 +0000 (11:21 -0700)] 
[libzstd] Fix bug in Huffman encoding

Summary:
Huffman encoding with a bad dictionary can encode worse than the
HUF_BLOCKBOUND(srcSize), since we don't filter out incompressible
input, and even if we did, the dictionaries Huffman table could be
ill suited to compressing actual data.

The fast optimization doesn't seem to improve compression speed,
even when I hard coded fast = 1, the speed didn't improve over hard coding
it to 0.

Benchmarks:
$ ./zstd.dev -b1e5
Benchmarking levels from 1 to 5
 1#Synthetic 50%     :  10000000 ->   3139163 (3.186), 524.8 MB/s ,1890.0 MB/s
 2#Synthetic 50%     :  10000000 ->   3115138 (3.210), 372.6 MB/s ,1830.2 MB/s
 3#Synthetic 50%     :  10000000 ->   3222672 (3.103), 223.3 MB/s ,1400.2 MB/s
 4#Synthetic 50%     :  10000000 ->   3276678 (3.052), 198.0 MB/s ,1280.1 MB/s
 5#Synthetic 50%     :  10000000 ->   3271570 (3.057), 107.8 MB/s ,1200.0 MB/s
$ ./zstd -b1e5
Benchmarking levels from 1 to 5
 1#Synthetic 50%     :  10000000 ->   3139163 (3.186), 524.8 MB/s ,1870.2 MB/s
 2#Synthetic 50%     :  10000000 ->   3115138 (3.210), 370.0 MB/s ,1810.3 MB/s
 3#Synthetic 50%     :  10000000 ->   3222672 (3.103), 223.3 MB/s ,1380.1 MB/s
 4#Synthetic 50%     :  10000000 ->   3276678 (3.052), 196.1 MB/s ,1270.0 MB/s
 5#Synthetic 50%     :  10000000 ->   3271570 (3.057), 106.8 MB/s ,1180.1 MB/s
$ ./zstd.dev -b1e5 ../silesia.tar
Benchmarking levels from 1 to 5
 1#silesia.tar       : 211988480 ->  73651685 (2.878), 429.7 MB/s ,1096.5 MB/s
 2#silesia.tar       : 211988480 ->  70158785 (3.022), 321.2 MB/s ,1029.1 MB/s
 3#silesia.tar       : 211988480 ->  66993813 (3.164), 243.7 MB/s , 981.4 MB/s
 4#silesia.tar       : 211988480 ->  66306481 (3.197), 226.7 MB/s , 972.4 MB/s
 5#silesia.tar       : 211988480 ->  64757852 (3.274), 150.3 MB/s , 963.6 MB/s
$ ./zstd -b1e5 ../silesia.tar
Benchmarking levels from 1 to 5
 1#silesia.tar       : 211988480 ->  73651685 (2.878), 429.7 MB/s ,1087.1 MB/s
 2#silesia.tar       : 211988480 ->  70158785 (3.022), 318.8 MB/s ,1029.1 MB/s
 3#silesia.tar       : 211988480 ->  66993813 (3.164), 246.5 MB/s , 981.4 MB/s
 4#silesia.tar       : 211988480 ->  66306481 (3.197), 229.2 MB/s , 972.4 MB/s
 5#silesia.tar       : 211988480 ->  64757852 (3.274), 149.3 MB/s , 963.6 MB/s

Test Plan:
I added a test case to the fuzzer which crashed with ASAN before the patch
and succeeded after.

8 years agochanged test cases to use -s setting on the diffs
Paul Cruz [Tue, 18 Jul 2017 19:58:50 +0000 (12:58 -0700)] 
changed test cases to use -s setting on the diffs

8 years agoMerge pull request #766 from terrelln/real-block-split
Yann Collet [Tue, 18 Jul 2017 15:26:24 +0000 (08:26 -0700)] 
Merge pull request #766 from terrelln/real-block-split

[libzstd] Pull optimal parser state out of seqStore_t

8 years agoMerge pull request #765 from terrelln/real-block-split
Yann Collet [Tue, 18 Jul 2017 02:25:55 +0000 (19:25 -0700)] 
Merge pull request #765 from terrelln/real-block-split

[libzstd] Remove ZSTD_CCtx* argument of ZSTD_compressSequences()

8 years agoExperiment with using a lag when hashing
Stella Lau [Tue, 18 Jul 2017 01:13:09 +0000 (18:13 -0700)] 
Experiment with using a lag when hashing

8 years agochange parameters for compression level adapt
Paul Cruz [Tue, 18 Jul 2017 00:59:50 +0000 (17:59 -0700)] 
change parameters for compression level adapt