Yann Collet
59a7116cc2
benchfn dependencies reduced to only timefn
...
benchfn used to rely on mem.h, and util,
which in turn relied on platform.h.
Using benchfn outside of zstd required to bring all these dependencies.
Now, dependency is reduced to timefn only.
This required to create a separate timefn from util,
and rewrite benchfn and timefn to no longer need mem.h.
Separating timefn from util has a wide effect accross the code base,
as usage of time functions is widespread.
A lot of build scripts had to be updated to also include timefn.
2019-04-10 12:37:03 -07:00
Yann Collet
3583d19c4e
changed parameter names from ZSTD_p_* to ZSTD_c_*
...
for naming consistency
2018-12-05 17:26:02 -08:00
Yann Collet
5373e44ba7
fixed contrib/adaptive-compression
2018-03-15 17:10:15 -07:00
Yann Collet
b0cb081dc8
last batch of header files changed to reflect new license ( #825 )
...
only remains to update contrib/linux-kernel (@terrelln)
2017-08-31 12:20:50 -07:00
Paul Cruz
fc90469587
updated program name print statement
2017-08-10 16:11:59 -07:00
Paul Cruz
7069bb9458
Merge branch 'adapt-approach-4' into bug-fixes
2017-08-07 13:18:53 -07:00
Paul Cruz
e100a311eb
removed direct assignment of 22, used ZSTD_maxCLevel() instead
2017-08-07 13:11:07 -07:00
Paul Cruz
01237e3b35
changed multi to zstd-adaptive in the help menu
2017-08-03 15:13:49 -07:00
Paul Cruz
8be7bba08c
added mutex for compression level to avoid data race
2017-08-02 10:27:33 -07:00
Paul Cruz
69ef22c0ac
added detach statements to prevent resource leak
2017-08-01 17:36:13 -07:00
Paul Cruz
0295737ad7
change signal to broadcast for jobCompressed condition varaible since multiple threads waiting
2017-07-31 13:43:03 -07:00
Paul Cruz
f60cd3f99b
print defaults and range, remove EXT
2017-07-31 09:47:09 -07:00
Paul Cruz
e22b60cb76
removed ternary operation, added assert statement, check to make sure initial compression level is within bounds
2017-07-28 17:46:51 -07:00
Paul Cruz
cb9af53e77
delete empty line
2017-07-28 17:28:25 -07:00
Paul Cruz
0f4cb67b00
add tests for compression bounds, fix another warning
2017-07-28 15:55:02 -07:00
Paul Cruz
ff54fced64
patched style errors, add ability to bound compression level variation
2017-07-28 15:30:46 -07:00
Paul Cruz
2320e7378a
remove unused variable, add documentation for context fields
2017-07-26 17:02:47 -07:00
Paul Cruz
ab5a78547e
fix leaky abstraction regarding measuring completion
2017-07-26 16:40:05 -07:00
Paul Cruz
715f36ca81
added definitions for conversion constants, moved forced compression check to top of adaptCompressionLevel, used ZSTD_BLOCKSIZE_MAX
2017-07-26 15:52:15 -07:00
Paul Cruz
6c1c1242fc
set the window log value before performing compression
2017-07-26 14:29:59 -07:00
Paul Cruz
a959cc881a
moved reset of completion to right after wait
2017-07-26 10:34:48 -07:00
Paul Cruz
305d5ee70f
change to >= convergence counter
2017-07-26 10:20:29 -07:00
Paul Cruz
be92a38d6a
decrease completion requirements for change, move create thread wait, merge cases where compression thread should wait
2017-07-26 10:05:10 -07:00
Paul Cruz
0b18d21e03
building on readme, added another help tip in the menu
2017-07-25 17:47:02 -07:00
Paul Cruz
8dbb07d822
updated progress bar with better representation of time, added const
2017-07-25 16:03:43 -07:00
Paul Cruz
9a132707af
changing time units to seconds
2017-07-25 15:26:26 -07:00
Paul Cruz
31a9ed9883
updated const values, added more comments
2017-07-25 14:53:40 -07:00
Paul Cruz
5cfbf609a4
removed old debug statements no longer being used
2017-07-25 14:31:48 -07:00
Paul Cruz
0882cd1981
progress bar -- don't print num jobs, time elapsed shown in seconds
2017-07-25 14:26:55 -07:00
Paul Cruz
310c12d07e
moved debug statements to a compiler flag
2017-07-25 14:08:39 -07:00
Paul Cruz
e02c79f833
started using decrease cooldown so that compression level would not decrease several times in a row
2017-07-25 11:16:27 -07:00
Paul Cruz
85d7c919f6
created independent function for controlling how completion relates to compression level change
2017-07-25 10:32:14 -07:00
Paul Cruz
6f1e260edd
added mechanism for getting rid of spikes
2017-07-25 10:01:10 -07:00
Paul Cruz
700758d676
added help statement for -p, switched it to hide progress bar now that progress bar is default
2017-07-24 16:26:20 -07:00
Paul Cruz
df3754b6ed
add quiet option, make progress bar default
2017-07-24 16:19:07 -07:00
Paul Cruz
4dc83ca64c
compression thread should take measurements independently based on whether or not the create/write thread will actually bottleneck performance
2017-07-24 15:14:58 -07:00
Paul Cruz
0ee3f8c2f8
adding more debug
2017-07-24 15:06:11 -07:00
Paul Cruz
8328f8192a
updating debug statements again
2017-07-24 14:40:23 -07:00
Paul Cruz
d3d759301f
changing position of endline for debug
2017-07-24 13:47:39 -07:00
Paul Cruz
e508f632d6
updated comments and debug statements
2017-07-24 11:01:36 -07:00
Paul Cruz
483d936b87
reduced competition for completion mutex by separating mutex use based on which values is updated
2017-07-23 14:09:16 -07:00
Paul Cruz
880f08d104
change how completion is measured in compression thread
2017-07-23 10:18:54 -07:00
Paul Cruz
08d9e42ec6
removed useless measurements
2017-07-21 18:02:55 -07:00
Paul Cruz
95bef759b3
switched over to model where reading only waits on compression thread
2017-07-21 17:49:39 -07:00
Paul Cruz
6455ec482c
taking the maximum of the completion level reads in order to determine which one was waiting more
2017-07-21 16:05:01 -07:00
Paul Cruz
05fe8dd47c
updating debug statements
2017-07-21 14:06:24 -07:00
Paul Cruz
db109f8fef
measure multiple completion levels during each wait
2017-07-21 13:38:24 -07:00
Paul Cruz
721c6a8b97
added bounding to compression level change
2017-07-21 09:30:24 -07:00
Paul Cruz
e929d3b787
added priority decision making for adapt compression level
2017-07-21 09:26:35 -07:00
Paul Cruz
9259c7afa4
semi working version that stabilizes
2017-07-20 18:45:33 -07:00