mirror of
https://github.com/facebook/zstd.git
synced 2025-07-30 22:23:13 +03:00
update hrlog rule to favor compression ratio a bit more at low levels
This commit is contained in:
@ -141,7 +141,7 @@ void ZSTD_ldm_adjustParameters(ldmParams_t* params,
|
|||||||
if (params->hashRateLog == 0) {
|
if (params->hashRateLog == 0) {
|
||||||
assert(1 <= (int)cParams->strategy && (int)cParams->strategy <= 9);
|
assert(1 <= (int)cParams->strategy && (int)cParams->strategy <= 9);
|
||||||
/* mapping: strat1 -> rate8 ... strat9 -> rate4*/
|
/* mapping: strat1 -> rate8 ... strat9 -> rate4*/
|
||||||
params->hashRateLog = 9 - ((cParams->strategy+1)/2);
|
params->hashRateLog = 7 - (cParams->strategy/3);
|
||||||
}
|
}
|
||||||
if (params->hashLog == 0) {
|
if (params->hashLog == 0) {
|
||||||
params->hashLog = MAX(ZSTD_HASHLOG_MIN, params->windowLog - params->hashRateLog);
|
params->hashLog = MAX(ZSTD_HASHLOG_MIN, params->windowLog - params->hashRateLog);
|
||||||
|
@ -464,7 +464,7 @@ The list of available _options_:
|
|||||||
Larger values will improve compression speed. Deviating far from the
|
Larger values will improve compression speed. Deviating far from the
|
||||||
default value will likely result in a decrease in compression ratio.
|
default value will likely result in a decrease in compression ratio.
|
||||||
|
|
||||||
The default value varies between 4 and 8, depending on `strategy`.
|
The default value varies between 4 and 7, depending on `strategy`.
|
||||||
|
|
||||||
- `ldmHashLog`=_lhlog_, `lhlog`=_lhlog_:
|
- `ldmHashLog`=_lhlog_, `lhlog`=_lhlog_:
|
||||||
Specify the maximum size for a hash table used for long distance matching.
|
Specify the maximum size for a hash table used for long distance matching.
|
||||||
|
@ -111,9 +111,9 @@ silesia, level 9, zstdcli,
|
|||||||
silesia, level 13, zstdcli, 4488438
|
silesia, level 13, zstdcli, 4488438
|
||||||
silesia, level 16, zstdcli, 4358150
|
silesia, level 16, zstdcli, 4358150
|
||||||
silesia, level 19, zstdcli, 4265929
|
silesia, level 19, zstdcli, 4265929
|
||||||
silesia, long distance mode, zstdcli, 4828930
|
silesia, long distance mode, zstdcli, 4827199
|
||||||
silesia, multithreaded, zstdcli, 4833113
|
silesia, multithreaded, zstdcli, 4833113
|
||||||
silesia, multithreaded long distance mode, zstdcli, 4828930
|
silesia, multithreaded long distance mode, zstdcli, 4827199
|
||||||
silesia, small window log, zstdcli, 7094528
|
silesia, small window log, zstdcli, 7094528
|
||||||
silesia, small hash log, zstdcli, 6527214
|
silesia, small hash log, zstdcli, 6527214
|
||||||
silesia, small chain log, zstdcli, 4911647
|
silesia, small chain log, zstdcli, 4911647
|
||||||
@ -137,9 +137,9 @@ silesia.tar, level 13, zstdcli,
|
|||||||
silesia.tar, level 16, zstdcli, 4357018
|
silesia.tar, level 16, zstdcli, 4357018
|
||||||
silesia.tar, level 19, zstdcli, 4259593
|
silesia.tar, level 19, zstdcli, 4259593
|
||||||
silesia.tar, no source size, zstdcli, 4836000
|
silesia.tar, no source size, zstdcli, 4836000
|
||||||
silesia.tar, long distance mode, zstdcli, 4833141
|
silesia.tar, long distance mode, zstdcli, 4831415
|
||||||
silesia.tar, multithreaded, zstdcli, 4836004
|
silesia.tar, multithreaded, zstdcli, 4836004
|
||||||
silesia.tar, multithreaded long distance mode, zstdcli, 4833141
|
silesia.tar, multithreaded long distance mode, zstdcli, 4831415
|
||||||
silesia.tar, small window log, zstdcli, 7100110
|
silesia.tar, small window log, zstdcli, 7100110
|
||||||
silesia.tar, small hash log, zstdcli, 6530127
|
silesia.tar, small hash log, zstdcli, 6530127
|
||||||
silesia.tar, small chain log, zstdcli, 4915865
|
silesia.tar, small chain log, zstdcli, 4915865
|
||||||
@ -217,9 +217,9 @@ github.tar, level 19, zstdcli,
|
|||||||
github.tar, level 19 with dict, zstdcli, 32705
|
github.tar, level 19 with dict, zstdcli, 32705
|
||||||
github.tar, no source size, zstdcli, 38885
|
github.tar, no source size, zstdcli, 38885
|
||||||
github.tar, no source size with dict, zstdcli, 38115
|
github.tar, no source size with dict, zstdcli, 38115
|
||||||
github.tar, long distance mode, zstdcli, 38801
|
github.tar, long distance mode, zstdcli, 38775
|
||||||
github.tar, multithreaded, zstdcli, 38888
|
github.tar, multithreaded, zstdcli, 38888
|
||||||
github.tar, multithreaded long distance mode, zstdcli, 38801
|
github.tar, multithreaded long distance mode, zstdcli, 38775
|
||||||
github.tar, small window log, zstdcli, 198539
|
github.tar, small window log, zstdcli, 198539
|
||||||
github.tar, small hash log, zstdcli, 129874
|
github.tar, small hash log, zstdcli, 129874
|
||||||
github.tar, small chain log, zstdcli, 41673
|
github.tar, small chain log, zstdcli, 41673
|
||||||
@ -251,9 +251,9 @@ silesia, level 13, advanced
|
|||||||
silesia, level 16, advanced one pass, 4356799
|
silesia, level 16, advanced one pass, 4356799
|
||||||
silesia, level 19, advanced one pass, 4265851
|
silesia, level 19, advanced one pass, 4265851
|
||||||
silesia, no source size, advanced one pass, 4832054
|
silesia, no source size, advanced one pass, 4832054
|
||||||
silesia, long distance mode, advanced one pass, 4827748
|
silesia, long distance mode, advanced one pass, 4826152
|
||||||
silesia, multithreaded, advanced one pass, 4833065
|
silesia, multithreaded, advanced one pass, 4833065
|
||||||
silesia, multithreaded long distance mode, advanced one pass, 4828882
|
silesia, multithreaded long distance mode, advanced one pass, 4827151
|
||||||
silesia, small window log, advanced one pass, 7094480
|
silesia, small window log, advanced one pass, 7094480
|
||||||
silesia, small hash log, advanced one pass, 6525510
|
silesia, small hash log, advanced one pass, 6525510
|
||||||
silesia, small chain log, advanced one pass, 4912248
|
silesia, small chain log, advanced one pass, 4912248
|
||||||
@ -285,9 +285,9 @@ silesia.tar, level 13, advanced
|
|||||||
silesia.tar, level 16, advanced one pass, 4355572
|
silesia.tar, level 16, advanced one pass, 4355572
|
||||||
silesia.tar, level 19, advanced one pass, 4257629
|
silesia.tar, level 19, advanced one pass, 4257629
|
||||||
silesia.tar, no source size, advanced one pass, 4829268
|
silesia.tar, no source size, advanced one pass, 4829268
|
||||||
silesia.tar, long distance mode, advanced one pass, 4821065
|
silesia.tar, long distance mode, advanced one pass, 4819329
|
||||||
silesia.tar, multithreaded, advanced one pass, 4836000
|
silesia.tar, multithreaded, advanced one pass, 4836000
|
||||||
silesia.tar, multithreaded long distance mode, advanced one pass, 4833137
|
silesia.tar, multithreaded long distance mode, advanced one pass, 4831411
|
||||||
silesia.tar, small window log, advanced one pass, 7100064
|
silesia.tar, small window log, advanced one pass, 7100064
|
||||||
silesia.tar, small hash log, advanced one pass, 6530222
|
silesia.tar, small hash log, advanced one pass, 6530222
|
||||||
silesia.tar, small chain log, advanced one pass, 4915689
|
silesia.tar, small chain log, advanced one pass, 4915689
|
||||||
@ -535,9 +535,9 @@ github.tar, level 19 with dict copy, advanced
|
|||||||
github.tar, level 19 with dict load, advanced one pass, 32428
|
github.tar, level 19 with dict load, advanced one pass, 32428
|
||||||
github.tar, no source size, advanced one pass, 38884
|
github.tar, no source size, advanced one pass, 38884
|
||||||
github.tar, no source size with dict, advanced one pass, 37995
|
github.tar, no source size with dict, advanced one pass, 37995
|
||||||
github.tar, long distance mode, advanced one pass, 38797
|
github.tar, long distance mode, advanced one pass, 38771
|
||||||
github.tar, multithreaded, advanced one pass, 38884
|
github.tar, multithreaded, advanced one pass, 38884
|
||||||
github.tar, multithreaded long distance mode, advanced one pass, 38797
|
github.tar, multithreaded long distance mode, advanced one pass, 38771
|
||||||
github.tar, small window log, advanced one pass, 198535
|
github.tar, small window log, advanced one pass, 198535
|
||||||
github.tar, small hash log, advanced one pass, 129870
|
github.tar, small hash log, advanced one pass, 129870
|
||||||
github.tar, small chain log, advanced one pass, 41669
|
github.tar, small chain log, advanced one pass, 41669
|
||||||
@ -569,9 +569,9 @@ silesia, level 13, advanced
|
|||||||
silesia, level 16, advanced one pass small out, 4356799
|
silesia, level 16, advanced one pass small out, 4356799
|
||||||
silesia, level 19, advanced one pass small out, 4265851
|
silesia, level 19, advanced one pass small out, 4265851
|
||||||
silesia, no source size, advanced one pass small out, 4832054
|
silesia, no source size, advanced one pass small out, 4832054
|
||||||
silesia, long distance mode, advanced one pass small out, 4827748
|
silesia, long distance mode, advanced one pass small out, 4826152
|
||||||
silesia, multithreaded, advanced one pass small out, 4833065
|
silesia, multithreaded, advanced one pass small out, 4833065
|
||||||
silesia, multithreaded long distance mode, advanced one pass small out, 4828882
|
silesia, multithreaded long distance mode, advanced one pass small out, 4827151
|
||||||
silesia, small window log, advanced one pass small out, 7094480
|
silesia, small window log, advanced one pass small out, 7094480
|
||||||
silesia, small hash log, advanced one pass small out, 6525510
|
silesia, small hash log, advanced one pass small out, 6525510
|
||||||
silesia, small chain log, advanced one pass small out, 4912248
|
silesia, small chain log, advanced one pass small out, 4912248
|
||||||
@ -603,9 +603,9 @@ silesia.tar, level 13, advanced
|
|||||||
silesia.tar, level 16, advanced one pass small out, 4355572
|
silesia.tar, level 16, advanced one pass small out, 4355572
|
||||||
silesia.tar, level 19, advanced one pass small out, 4257629
|
silesia.tar, level 19, advanced one pass small out, 4257629
|
||||||
silesia.tar, no source size, advanced one pass small out, 4829268
|
silesia.tar, no source size, advanced one pass small out, 4829268
|
||||||
silesia.tar, long distance mode, advanced one pass small out, 4821065
|
silesia.tar, long distance mode, advanced one pass small out, 4819329
|
||||||
silesia.tar, multithreaded, advanced one pass small out, 4836000
|
silesia.tar, multithreaded, advanced one pass small out, 4836000
|
||||||
silesia.tar, multithreaded long distance mode, advanced one pass small out, 4833137
|
silesia.tar, multithreaded long distance mode, advanced one pass small out, 4831411
|
||||||
silesia.tar, small window log, advanced one pass small out, 7100064
|
silesia.tar, small window log, advanced one pass small out, 7100064
|
||||||
silesia.tar, small hash log, advanced one pass small out, 6530222
|
silesia.tar, small hash log, advanced one pass small out, 6530222
|
||||||
silesia.tar, small chain log, advanced one pass small out, 4915689
|
silesia.tar, small chain log, advanced one pass small out, 4915689
|
||||||
@ -853,9 +853,9 @@ github.tar, level 19 with dict copy, advanced
|
|||||||
github.tar, level 19 with dict load, advanced one pass small out, 32428
|
github.tar, level 19 with dict load, advanced one pass small out, 32428
|
||||||
github.tar, no source size, advanced one pass small out, 38884
|
github.tar, no source size, advanced one pass small out, 38884
|
||||||
github.tar, no source size with dict, advanced one pass small out, 37995
|
github.tar, no source size with dict, advanced one pass small out, 37995
|
||||||
github.tar, long distance mode, advanced one pass small out, 38797
|
github.tar, long distance mode, advanced one pass small out, 38771
|
||||||
github.tar, multithreaded, advanced one pass small out, 38884
|
github.tar, multithreaded, advanced one pass small out, 38884
|
||||||
github.tar, multithreaded long distance mode, advanced one pass small out, 38797
|
github.tar, multithreaded long distance mode, advanced one pass small out, 38771
|
||||||
github.tar, small window log, advanced one pass small out, 198535
|
github.tar, small window log, advanced one pass small out, 198535
|
||||||
github.tar, small hash log, advanced one pass small out, 129870
|
github.tar, small hash log, advanced one pass small out, 129870
|
||||||
github.tar, small chain log, advanced one pass small out, 41669
|
github.tar, small chain log, advanced one pass small out, 41669
|
||||||
@ -887,9 +887,9 @@ silesia, level 13, advanced
|
|||||||
silesia, level 16, advanced streaming, 4358094
|
silesia, level 16, advanced streaming, 4358094
|
||||||
silesia, level 19, advanced streaming, 4265908
|
silesia, level 19, advanced streaming, 4265908
|
||||||
silesia, no source size, advanced streaming, 4835768
|
silesia, no source size, advanced streaming, 4835768
|
||||||
silesia, long distance mode, advanced streaming, 4831544
|
silesia, long distance mode, advanced streaming, 4829919
|
||||||
silesia, multithreaded, advanced streaming, 4833065
|
silesia, multithreaded, advanced streaming, 4833065
|
||||||
silesia, multithreaded long distance mode, advanced streaming, 4828882
|
silesia, multithreaded long distance mode, advanced streaming, 4827151
|
||||||
silesia, small window log, advanced streaming, 7110591
|
silesia, small window log, advanced streaming, 7110591
|
||||||
silesia, small hash log, advanced streaming, 6525259
|
silesia, small hash log, advanced streaming, 6525259
|
||||||
silesia, small chain log, advanced streaming, 4911577
|
silesia, small chain log, advanced streaming, 4911577
|
||||||
@ -921,9 +921,9 @@ silesia.tar, level 13, advanced
|
|||||||
silesia.tar, level 16, advanced streaming, 4358029
|
silesia.tar, level 16, advanced streaming, 4358029
|
||||||
silesia.tar, level 19, advanced streaming, 4258228
|
silesia.tar, level 19, advanced streaming, 4258228
|
||||||
silesia.tar, no source size, advanced streaming, 4846779
|
silesia.tar, no source size, advanced streaming, 4846779
|
||||||
silesia.tar, long distance mode, advanced streaming, 4831119
|
silesia.tar, long distance mode, advanced streaming, 4829404
|
||||||
silesia.tar, multithreaded, advanced streaming, 4836000
|
silesia.tar, multithreaded, advanced streaming, 4836000
|
||||||
silesia.tar, multithreaded long distance mode, advanced streaming, 4833137
|
silesia.tar, multithreaded long distance mode, advanced streaming, 4831411
|
||||||
silesia.tar, small window log, advanced streaming, 7117024
|
silesia.tar, small window log, advanced streaming, 7117024
|
||||||
silesia.tar, small hash log, advanced streaming, 6529503
|
silesia.tar, small hash log, advanced streaming, 6529503
|
||||||
silesia.tar, small chain log, advanced streaming, 4915956
|
silesia.tar, small chain log, advanced streaming, 4915956
|
||||||
@ -1171,9 +1171,9 @@ github.tar, level 19 with dict copy, advanced
|
|||||||
github.tar, level 19 with dict load, advanced streaming, 32428
|
github.tar, level 19 with dict load, advanced streaming, 32428
|
||||||
github.tar, no source size, advanced streaming, 38881
|
github.tar, no source size, advanced streaming, 38881
|
||||||
github.tar, no source size with dict, advanced streaming, 38111
|
github.tar, no source size with dict, advanced streaming, 38111
|
||||||
github.tar, long distance mode, advanced streaming, 38797
|
github.tar, long distance mode, advanced streaming, 38771
|
||||||
github.tar, multithreaded, advanced streaming, 38884
|
github.tar, multithreaded, advanced streaming, 38884
|
||||||
github.tar, multithreaded long distance mode, advanced streaming, 38797
|
github.tar, multithreaded long distance mode, advanced streaming, 38771
|
||||||
github.tar, small window log, advanced streaming, 199553
|
github.tar, small window log, advanced streaming, 199553
|
||||||
github.tar, small hash log, advanced streaming, 129870
|
github.tar, small hash log, advanced streaming, 129870
|
||||||
github.tar, small chain log, advanced streaming, 41669
|
github.tar, small chain log, advanced streaming, 41669
|
||||||
|
|
Reference in New Issue
Block a user