@@ -156,15 +156,30 @@ jobs:
|
||||
make libc6install
|
||||
CFLAGS="-O3 -m32" FUZZER_FLAGS="--long-tests" make uasan-fuzztest
|
||||
|
||||
clang-asan-ubsan-fuzz32:
|
||||
clang-asan-fuzz32:
|
||||
runs-on: ubuntu-20.04
|
||||
steps:
|
||||
- uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # tag=v4.1.1
|
||||
- name: clang + ASan + UBSan + Fuzz Test 32bit
|
||||
- name: clang + ASan + Fuzz Test 32bit
|
||||
run: |
|
||||
sudo apt-get -qqq update
|
||||
make libc6install
|
||||
CC=clang CFLAGS="-O3 -m32" FUZZER_FLAGS="--long-tests" make uasan-fuzztest
|
||||
CC=clang CFLAGS="-O3 -m32" FUZZER_FLAGS="--long-tests" make asan-fuzztest
|
||||
|
||||
# The following test seems to have issues on github CI specifically,
|
||||
# it does not provide the `__mulodi4` instruction emulation
|
||||
# required for signed 64-bit multiplication.
|
||||
# Replaced by asan-only test (above)
|
||||
#
|
||||
# clang-asan-ubsan-fuzz32:
|
||||
# runs-on: ubuntu-20.04
|
||||
# steps:
|
||||
# - uses: actions/checkout@b4ffde65f46336ab88eb53be808477a3936bae11 # tag=v4.1.1
|
||||
# - name: clang + ASan + UBSan + Fuzz Test 32bit
|
||||
# run: |
|
||||
# sudo apt-get -qqq update
|
||||
# make libc6install
|
||||
# CC=clang CFLAGS="-O3 -m32" FUZZER_FLAGS="--long-tests" make uasan-fuzztest
|
||||
|
||||
asan-ubsan-regression:
|
||||
runs-on: ubuntu-20.04
|
||||
|
||||
@@ -232,10 +232,10 @@ jobs:
|
||||
-Dbin_tests=true \
|
||||
-Dbin_contrib=true \
|
||||
-Ddefault_library=both \
|
||||
build/meson builddir
|
||||
ninja -C builddir/
|
||||
meson test -C builddir/ --print-errorlogs
|
||||
meson install -C builddir --destdir staging/
|
||||
build/meson mesonBuild
|
||||
ninja -C mesonBuild/
|
||||
meson test -C mesonBuild/ --print-errorlogs
|
||||
meson install -C mesonBuild --destdir staging/
|
||||
|
||||
meson-mingw-cross-compilation:
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
@@ -145,7 +145,7 @@ clean:
|
||||
$(Q)$(MAKE) -C contrib/largeNbDicts $@ > $(VOID)
|
||||
$(Q)$(MAKE) -C contrib/externalSequenceProducer $@ > $(VOID)
|
||||
$(Q)$(RM) zstd$(EXT) zstdmt$(EXT) tmp*
|
||||
$(Q)$(RM) -r lz4 cmakebuild install
|
||||
$(Q)$(RM) -r lz4 cmakebuild mesonbuild install
|
||||
@echo Cleaning completed
|
||||
|
||||
#------------------------------------------------------------------------------
|
||||
@@ -415,6 +415,24 @@ cmakebuild:
|
||||
$(CMAKE) --build cmakebuild --target install -- -j V=1
|
||||
cd cmakebuild; ctest -V -L Medium
|
||||
|
||||
MESON ?= meson
|
||||
NINJA ?= ninja
|
||||
|
||||
.PHONY: mesonbuild
|
||||
mesonbuild:
|
||||
$(MESON) setup \
|
||||
--buildtype=debugoptimized \
|
||||
-Db_lundef=false \
|
||||
-Dauto_features=enabled \
|
||||
-Dbin_programs=true \
|
||||
-Dbin_tests=true \
|
||||
-Dbin_contrib=true \
|
||||
-Ddefault_library=both \
|
||||
build/meson mesonbuild
|
||||
$(NINJA) -C mesonbuild/
|
||||
$(MESON) test -C mesonbuild/ --print-errorlogs
|
||||
$(MESON) install -C mesonbuild --destdir staging/
|
||||
|
||||
.PHONY: c89build gnu90build c99build gnu99build c11build bmix64build bmix32build bmi32build staticAnalyze
|
||||
c89build: clean
|
||||
$(CC) -v
|
||||
|
||||
@@ -170,6 +170,7 @@
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_literals.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_sequences.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_superblock.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_preSplit.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstdmt_compress.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_fast.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_double_fast.c" />
|
||||
|
||||
@@ -170,6 +170,7 @@
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_literals.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_sequences.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_superblock.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_preSplit.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_fast.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_double_fast.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_lazy.c" />
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_literals.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_sequences.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_superblock.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_preSplit.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_fast.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_double_fast.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_lazy.c" />
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_literals.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_sequences.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_superblock.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_preSplit.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_fast.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_double_fast.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_lazy.c" />
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_literals.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_sequences.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_compress_superblock.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_preSplit.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_fast.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_double_fast.c" />
|
||||
<ClCompile Include="..\..\..\lib\compress\zstd_lazy.c" />
|
||||
|
||||
@@ -30,6 +30,7 @@ libzstd_sources = [join_paths(zstd_rootdir, 'lib/common/entropy_common.c'),
|
||||
join_paths(zstd_rootdir, 'lib/compress/zstd_compress_literals.c'),
|
||||
join_paths(zstd_rootdir, 'lib/compress/zstd_compress_sequences.c'),
|
||||
join_paths(zstd_rootdir, 'lib/compress/zstd_compress_superblock.c'),
|
||||
join_paths(zstd_rootdir, 'lib/compress/zstd_preSplit.c'),
|
||||
join_paths(zstd_rootdir, 'lib/compress/zstdmt_compress.c'),
|
||||
join_paths(zstd_rootdir, 'lib/compress/zstd_fast.c'),
|
||||
join_paths(zstd_rootdir, 'lib/compress/zstd_double_fast.c'),
|
||||
|
||||
@@ -69,6 +69,7 @@
|
||||
#include "compress/zstd_compress_literals.c"
|
||||
#include "compress/zstd_compress_sequences.c"
|
||||
#include "compress/zstd_compress_superblock.c"
|
||||
#include "compress/zstd_preSplit.c"
|
||||
#include "compress/zstd_compress.c"
|
||||
#include "compress/zstd_double_fast.c"
|
||||
#include "compress/zstd_fast.c"
|
||||
|
||||
@@ -278,6 +278,12 @@
|
||||
* Alignment check
|
||||
*****************************************************************/
|
||||
|
||||
/* @return 1 if @u is a 2^n value, 0 otherwise
|
||||
* useful to check a value is valid for alignment restrictions */
|
||||
MEM_STATIC int ZSTD_isPower2(size_t u) {
|
||||
return (u & (u-1)) == 0;
|
||||
}
|
||||
|
||||
/* this test was initially positioned in mem.h,
|
||||
* but this file is removed (or replaced) for linux kernel
|
||||
* so it's now hosted in compiler.h,
|
||||
|
||||
@@ -137,11 +137,12 @@ ZSTD_CCtx* ZSTD_initStaticCCtx(void* workspace, size_t workspaceSize)
|
||||
ZSTD_cwksp_move(&cctx->workspace, &ws);
|
||||
cctx->staticSize = workspaceSize;
|
||||
|
||||
/* statically sized space. entropyWorkspace never moves (but prev/next block swap places) */
|
||||
if (!ZSTD_cwksp_check_available(&cctx->workspace, ENTROPY_WORKSPACE_SIZE + 2 * sizeof(ZSTD_compressedBlockState_t))) return NULL;
|
||||
/* statically sized space. tmpWorkspace never moves (but prev/next block swap places) */
|
||||
if (!ZSTD_cwksp_check_available(&cctx->workspace, TMP_WORKSPACE_SIZE + 2 * sizeof(ZSTD_compressedBlockState_t))) return NULL;
|
||||
cctx->blockState.prevCBlock = (ZSTD_compressedBlockState_t*)ZSTD_cwksp_reserve_object(&cctx->workspace, sizeof(ZSTD_compressedBlockState_t));
|
||||
cctx->blockState.nextCBlock = (ZSTD_compressedBlockState_t*)ZSTD_cwksp_reserve_object(&cctx->workspace, sizeof(ZSTD_compressedBlockState_t));
|
||||
cctx->entropyWorkspace = (U32*)ZSTD_cwksp_reserve_object(&cctx->workspace, ENTROPY_WORKSPACE_SIZE);
|
||||
cctx->tmpWorkspace = ZSTD_cwksp_reserve_object(&cctx->workspace, TMP_WORKSPACE_SIZE);
|
||||
cctx->tmpWkspSize = TMP_WORKSPACE_SIZE;
|
||||
cctx->bmi2 = ZSTD_cpuid_bmi2(ZSTD_cpuid());
|
||||
return cctx;
|
||||
}
|
||||
@@ -883,7 +884,7 @@ size_t ZSTD_CCtxParams_setParameter(ZSTD_CCtx_params* CCtxParams,
|
||||
value = ZSTDMT_JOBSIZE_MIN;
|
||||
FORWARD_IF_ERROR(ZSTD_cParam_clampBounds(param, &value), "");
|
||||
assert(value >= 0);
|
||||
CCtxParams->jobSize = value;
|
||||
CCtxParams->jobSize = (size_t)value;
|
||||
return CCtxParams->jobSize;
|
||||
#endif
|
||||
|
||||
@@ -1002,7 +1003,8 @@ size_t ZSTD_CCtxParams_setParameter(ZSTD_CCtx_params* CCtxParams,
|
||||
case ZSTD_c_maxBlockSize:
|
||||
if (value!=0) /* 0 ==> default */
|
||||
BOUNDCHECK(ZSTD_c_maxBlockSize, value);
|
||||
CCtxParams->maxBlockSize = value;
|
||||
assert(value>=0);
|
||||
CCtxParams->maxBlockSize = (size_t)value;
|
||||
return CCtxParams->maxBlockSize;
|
||||
|
||||
case ZSTD_c_searchForExternalRepcodes:
|
||||
@@ -1630,7 +1632,8 @@ ZSTD_compressionParameters ZSTD_getCParamsFromCCtxParams(
|
||||
{
|
||||
ZSTD_compressionParameters cParams;
|
||||
if (srcSizeHint == ZSTD_CONTENTSIZE_UNKNOWN && CCtxParams->srcSizeHint > 0) {
|
||||
srcSizeHint = CCtxParams->srcSizeHint;
|
||||
assert(CCtxParams->srcSizeHint>=0);
|
||||
srcSizeHint = (U64)CCtxParams->srcSizeHint;
|
||||
}
|
||||
cParams = ZSTD_getCParams_internal(CCtxParams->compressionLevel, srcSizeHint, dictSize, mode);
|
||||
if (CCtxParams->ldmParams.enableLdm == ZSTD_ps_enable) cParams.windowLog = ZSTD_LDM_DEFAULT_WINDOW_LOG;
|
||||
@@ -1659,14 +1662,14 @@ ZSTD_sizeof_matchState(const ZSTD_compressionParameters* const cParams,
|
||||
+ hSize * sizeof(U32)
|
||||
+ h3Size * sizeof(U32);
|
||||
size_t const optPotentialSpace =
|
||||
ZSTD_cwksp_aligned_alloc_size((MaxML+1) * sizeof(U32))
|
||||
+ ZSTD_cwksp_aligned_alloc_size((MaxLL+1) * sizeof(U32))
|
||||
+ ZSTD_cwksp_aligned_alloc_size((MaxOff+1) * sizeof(U32))
|
||||
+ ZSTD_cwksp_aligned_alloc_size((1<<Litbits) * sizeof(U32))
|
||||
+ ZSTD_cwksp_aligned_alloc_size(ZSTD_OPT_SIZE * sizeof(ZSTD_match_t))
|
||||
+ ZSTD_cwksp_aligned_alloc_size(ZSTD_OPT_SIZE * sizeof(ZSTD_optimal_t));
|
||||
ZSTD_cwksp_aligned64_alloc_size((MaxML+1) * sizeof(U32))
|
||||
+ ZSTD_cwksp_aligned64_alloc_size((MaxLL+1) * sizeof(U32))
|
||||
+ ZSTD_cwksp_aligned64_alloc_size((MaxOff+1) * sizeof(U32))
|
||||
+ ZSTD_cwksp_aligned64_alloc_size((1<<Litbits) * sizeof(U32))
|
||||
+ ZSTD_cwksp_aligned64_alloc_size(ZSTD_OPT_SIZE * sizeof(ZSTD_match_t))
|
||||
+ ZSTD_cwksp_aligned64_alloc_size(ZSTD_OPT_SIZE * sizeof(ZSTD_optimal_t));
|
||||
size_t const lazyAdditionalSpace = ZSTD_rowMatchFinderUsed(cParams->strategy, useRowMatchFinder)
|
||||
? ZSTD_cwksp_aligned_alloc_size(hSize)
|
||||
? ZSTD_cwksp_aligned64_alloc_size(hSize)
|
||||
: 0;
|
||||
size_t const optSpace = (forCCtx && (cParams->strategy >= ZSTD_btopt))
|
||||
? optPotentialSpace
|
||||
@@ -1704,16 +1707,16 @@ static size_t ZSTD_estimateCCtxSize_usingCCtxParams_internal(
|
||||
size_t const blockSize = MIN(ZSTD_resolveMaxBlockSize(maxBlockSize), windowSize);
|
||||
size_t const maxNbSeq = ZSTD_maxNbSeq(blockSize, cParams->minMatch, useSequenceProducer);
|
||||
size_t const tokenSpace = ZSTD_cwksp_alloc_size(WILDCOPY_OVERLENGTH + blockSize)
|
||||
+ ZSTD_cwksp_aligned_alloc_size(maxNbSeq * sizeof(seqDef))
|
||||
+ ZSTD_cwksp_aligned64_alloc_size(maxNbSeq * sizeof(seqDef))
|
||||
+ 3 * ZSTD_cwksp_alloc_size(maxNbSeq * sizeof(BYTE));
|
||||
size_t const entropySpace = ZSTD_cwksp_alloc_size(ENTROPY_WORKSPACE_SIZE);
|
||||
size_t const tmpWorkSpace = ZSTD_cwksp_alloc_size(TMP_WORKSPACE_SIZE);
|
||||
size_t const blockStateSpace = 2 * ZSTD_cwksp_alloc_size(sizeof(ZSTD_compressedBlockState_t));
|
||||
size_t const matchStateSize = ZSTD_sizeof_matchState(cParams, useRowMatchFinder, /* enableDedicatedDictSearch */ 0, /* forCCtx */ 1);
|
||||
|
||||
size_t const ldmSpace = ZSTD_ldm_getTableSize(*ldmParams);
|
||||
size_t const maxNbLdmSeq = ZSTD_ldm_getMaxNbSeq(*ldmParams, blockSize);
|
||||
size_t const ldmSeqSpace = ldmParams->enableLdm == ZSTD_ps_enable ?
|
||||
ZSTD_cwksp_aligned_alloc_size(maxNbLdmSeq * sizeof(rawSeq)) : 0;
|
||||
ZSTD_cwksp_aligned64_alloc_size(maxNbLdmSeq * sizeof(rawSeq)) : 0;
|
||||
|
||||
|
||||
size_t const bufferSpace = ZSTD_cwksp_alloc_size(buffInSize)
|
||||
@@ -1723,12 +1726,12 @@ static size_t ZSTD_estimateCCtxSize_usingCCtxParams_internal(
|
||||
|
||||
size_t const maxNbExternalSeq = ZSTD_sequenceBound(blockSize);
|
||||
size_t const externalSeqSpace = useSequenceProducer
|
||||
? ZSTD_cwksp_aligned_alloc_size(maxNbExternalSeq * sizeof(ZSTD_Sequence))
|
||||
? ZSTD_cwksp_aligned64_alloc_size(maxNbExternalSeq * sizeof(ZSTD_Sequence))
|
||||
: 0;
|
||||
|
||||
size_t const neededSpace =
|
||||
cctxSpace +
|
||||
entropySpace +
|
||||
tmpWorkSpace +
|
||||
blockStateSpace +
|
||||
ldmSpace +
|
||||
ldmSeqSpace +
|
||||
@@ -2029,7 +2032,7 @@ ZSTD_reset_matchState(ZSTD_matchState_t* ms,
|
||||
ZSTD_advanceHashSalt(ms);
|
||||
} else {
|
||||
/* When we are not salting we want to always memset the memory */
|
||||
ms->tagTable = (BYTE*) ZSTD_cwksp_reserve_aligned(ws, tagTableSize);
|
||||
ms->tagTable = (BYTE*) ZSTD_cwksp_reserve_aligned64(ws, tagTableSize);
|
||||
ZSTD_memset(ms->tagTable, 0, tagTableSize);
|
||||
ms->hashSalt = 0;
|
||||
}
|
||||
@@ -2043,12 +2046,12 @@ ZSTD_reset_matchState(ZSTD_matchState_t* ms,
|
||||
/* opt parser space */
|
||||
if ((forWho == ZSTD_resetTarget_CCtx) && (cParams->strategy >= ZSTD_btopt)) {
|
||||
DEBUGLOG(4, "reserving optimal parser space");
|
||||
ms->opt.litFreq = (unsigned*)ZSTD_cwksp_reserve_aligned(ws, (1<<Litbits) * sizeof(unsigned));
|
||||
ms->opt.litLengthFreq = (unsigned*)ZSTD_cwksp_reserve_aligned(ws, (MaxLL+1) * sizeof(unsigned));
|
||||
ms->opt.matchLengthFreq = (unsigned*)ZSTD_cwksp_reserve_aligned(ws, (MaxML+1) * sizeof(unsigned));
|
||||
ms->opt.offCodeFreq = (unsigned*)ZSTD_cwksp_reserve_aligned(ws, (MaxOff+1) * sizeof(unsigned));
|
||||
ms->opt.matchTable = (ZSTD_match_t*)ZSTD_cwksp_reserve_aligned(ws, ZSTD_OPT_SIZE * sizeof(ZSTD_match_t));
|
||||
ms->opt.priceTable = (ZSTD_optimal_t*)ZSTD_cwksp_reserve_aligned(ws, ZSTD_OPT_SIZE * sizeof(ZSTD_optimal_t));
|
||||
ms->opt.litFreq = (unsigned*)ZSTD_cwksp_reserve_aligned64(ws, (1<<Litbits) * sizeof(unsigned));
|
||||
ms->opt.litLengthFreq = (unsigned*)ZSTD_cwksp_reserve_aligned64(ws, (MaxLL+1) * sizeof(unsigned));
|
||||
ms->opt.matchLengthFreq = (unsigned*)ZSTD_cwksp_reserve_aligned64(ws, (MaxML+1) * sizeof(unsigned));
|
||||
ms->opt.offCodeFreq = (unsigned*)ZSTD_cwksp_reserve_aligned64(ws, (MaxOff+1) * sizeof(unsigned));
|
||||
ms->opt.matchTable = (ZSTD_match_t*)ZSTD_cwksp_reserve_aligned64(ws, ZSTD_OPT_SIZE * sizeof(ZSTD_match_t));
|
||||
ms->opt.priceTable = (ZSTD_optimal_t*)ZSTD_cwksp_reserve_aligned64(ws, ZSTD_OPT_SIZE * sizeof(ZSTD_optimal_t));
|
||||
}
|
||||
|
||||
ms->cParams = *cParams;
|
||||
@@ -2164,15 +2167,16 @@ static size_t ZSTD_resetCCtx_internal(ZSTD_CCtx* zc,
|
||||
|
||||
DEBUGLOG(5, "reserving object space");
|
||||
/* Statically sized space.
|
||||
* entropyWorkspace never moves,
|
||||
* tmpWorkspace never moves,
|
||||
* though prev/next block swap places */
|
||||
assert(ZSTD_cwksp_check_available(ws, 2 * sizeof(ZSTD_compressedBlockState_t)));
|
||||
zc->blockState.prevCBlock = (ZSTD_compressedBlockState_t*) ZSTD_cwksp_reserve_object(ws, sizeof(ZSTD_compressedBlockState_t));
|
||||
RETURN_ERROR_IF(zc->blockState.prevCBlock == NULL, memory_allocation, "couldn't allocate prevCBlock");
|
||||
zc->blockState.nextCBlock = (ZSTD_compressedBlockState_t*) ZSTD_cwksp_reserve_object(ws, sizeof(ZSTD_compressedBlockState_t));
|
||||
RETURN_ERROR_IF(zc->blockState.nextCBlock == NULL, memory_allocation, "couldn't allocate nextCBlock");
|
||||
zc->entropyWorkspace = (U32*) ZSTD_cwksp_reserve_object(ws, ENTROPY_WORKSPACE_SIZE);
|
||||
RETURN_ERROR_IF(zc->entropyWorkspace == NULL, memory_allocation, "couldn't allocate entropyWorkspace");
|
||||
zc->tmpWorkspace = ZSTD_cwksp_reserve_object(ws, TMP_WORKSPACE_SIZE);
|
||||
RETURN_ERROR_IF(zc->tmpWorkspace == NULL, memory_allocation, "couldn't allocate tmpWorkspace");
|
||||
zc->tmpWkspSize = TMP_WORKSPACE_SIZE;
|
||||
} }
|
||||
|
||||
ZSTD_cwksp_clear(ws);
|
||||
@@ -2205,15 +2209,15 @@ static size_t ZSTD_resetCCtx_internal(ZSTD_CCtx* zc,
|
||||
needsIndexReset,
|
||||
ZSTD_resetTarget_CCtx), "");
|
||||
|
||||
zc->seqStore.sequencesStart = (seqDef*)ZSTD_cwksp_reserve_aligned(ws, maxNbSeq * sizeof(seqDef));
|
||||
zc->seqStore.sequencesStart = (seqDef*)ZSTD_cwksp_reserve_aligned64(ws, maxNbSeq * sizeof(seqDef));
|
||||
|
||||
/* ldm hash table */
|
||||
if (params->ldmParams.enableLdm == ZSTD_ps_enable) {
|
||||
/* TODO: avoid memset? */
|
||||
size_t const ldmHSize = ((size_t)1) << params->ldmParams.hashLog;
|
||||
zc->ldmState.hashTable = (ldmEntry_t*)ZSTD_cwksp_reserve_aligned(ws, ldmHSize * sizeof(ldmEntry_t));
|
||||
zc->ldmState.hashTable = (ldmEntry_t*)ZSTD_cwksp_reserve_aligned64(ws, ldmHSize * sizeof(ldmEntry_t));
|
||||
ZSTD_memset(zc->ldmState.hashTable, 0, ldmHSize * sizeof(ldmEntry_t));
|
||||
zc->ldmSequences = (rawSeq*)ZSTD_cwksp_reserve_aligned(ws, maxNbLdmSeq * sizeof(rawSeq));
|
||||
zc->ldmSequences = (rawSeq*)ZSTD_cwksp_reserve_aligned64(ws, maxNbLdmSeq * sizeof(rawSeq));
|
||||
zc->maxNbLdmSequences = maxNbLdmSeq;
|
||||
|
||||
ZSTD_window_init(&zc->ldmState.window);
|
||||
@@ -2225,7 +2229,7 @@ static size_t ZSTD_resetCCtx_internal(ZSTD_CCtx* zc,
|
||||
size_t const maxNbExternalSeq = ZSTD_sequenceBound(blockSize);
|
||||
zc->extSeqBufCapacity = maxNbExternalSeq;
|
||||
zc->extSeqBuf =
|
||||
(ZSTD_Sequence*)ZSTD_cwksp_reserve_aligned(ws, maxNbExternalSeq * sizeof(ZSTD_Sequence));
|
||||
(ZSTD_Sequence*)ZSTD_cwksp_reserve_aligned64(ws, maxNbExternalSeq * sizeof(ZSTD_Sequence));
|
||||
}
|
||||
|
||||
/* buffers */
|
||||
@@ -2444,7 +2448,8 @@ static size_t ZSTD_resetCCtx_byCopyingCDict(ZSTD_CCtx* cctx,
|
||||
}
|
||||
|
||||
/* Zero the hashTable3, since the cdict never fills it */
|
||||
{ int const h3log = cctx->blockState.matchState.hashLog3;
|
||||
assert(cctx->blockState.matchState.hashLog3 <= 31);
|
||||
{ U32 const h3log = cctx->blockState.matchState.hashLog3;
|
||||
size_t const h3Size = h3log ? ((size_t)1 << h3log) : 0;
|
||||
assert(cdict->matchState.hashLog3 == 0);
|
||||
ZSTD_memset(cctx->blockState.matchState.hashTable3, 0, h3Size * sizeof(U32));
|
||||
@@ -3891,14 +3896,14 @@ ZSTD_buildEntropyStatisticsAndEstimateSubBlockSize(seqStore_t* seqStore, ZSTD_CC
|
||||
&zc->blockState.nextCBlock->entropy,
|
||||
&zc->appliedParams,
|
||||
entropyMetadata,
|
||||
zc->entropyWorkspace, ENTROPY_WORKSPACE_SIZE), "");
|
||||
zc->tmpWorkspace, zc->tmpWkspSize), "");
|
||||
return ZSTD_estimateBlockSize(
|
||||
seqStore->litStart, (size_t)(seqStore->lit - seqStore->litStart),
|
||||
seqStore->ofCode, seqStore->llCode, seqStore->mlCode,
|
||||
(size_t)(seqStore->sequences - seqStore->sequencesStart),
|
||||
&zc->blockState.nextCBlock->entropy,
|
||||
entropyMetadata,
|
||||
zc->entropyWorkspace, ENTROPY_WORKSPACE_SIZE,
|
||||
zc->tmpWorkspace, zc->tmpWkspSize,
|
||||
(int)(entropyMetadata->hufMetadata.hType == set_compressed), 1);
|
||||
}
|
||||
|
||||
@@ -4064,7 +4069,7 @@ ZSTD_compressSeqStore_singleBlock(ZSTD_CCtx* zc,
|
||||
&zc->appliedParams,
|
||||
op + ZSTD_blockHeaderSize, dstCapacity - ZSTD_blockHeaderSize,
|
||||
srcSize,
|
||||
zc->entropyWorkspace, ENTROPY_WORKSPACE_SIZE /* statically allocated in resetCCtx */,
|
||||
zc->tmpWorkspace, zc->tmpWkspSize /* statically allocated in resetCCtx */,
|
||||
zc->bmi2);
|
||||
FORWARD_IF_ERROR(cSeqsSize, "ZSTD_entropyCompressSeqStore failed!");
|
||||
|
||||
@@ -4354,7 +4359,7 @@ ZSTD_compressBlock_internal(ZSTD_CCtx* zc,
|
||||
&zc->appliedParams,
|
||||
dst, dstCapacity,
|
||||
srcSize,
|
||||
zc->entropyWorkspace, ENTROPY_WORKSPACE_SIZE /* statically allocated in resetCCtx */,
|
||||
zc->tmpWorkspace, zc->tmpWkspSize /* statically allocated in resetCCtx */,
|
||||
zc->bmi2);
|
||||
|
||||
if (frame &&
|
||||
@@ -4484,6 +4489,34 @@ static void ZSTD_overflowCorrectIfNeeded(ZSTD_matchState_t* ms,
|
||||
}
|
||||
}
|
||||
|
||||
#include "zstd_preSplit.h"
|
||||
|
||||
static size_t ZSTD_optimalBlockSize(ZSTD_CCtx* cctx, const void* src, size_t srcSize, size_t blockSizeMax, ZSTD_strategy strat, S64 savings)
|
||||
{
|
||||
/* note: conservatively only split full blocks (128 KB) currently.
|
||||
* While it's possible to go lower, let's keep it simple for a first implementation.
|
||||
* Besides, benefits of splitting are reduced when blocks are already small.
|
||||
*/
|
||||
if (srcSize < 128 KB || blockSizeMax < 128 KB)
|
||||
return MIN(srcSize, blockSizeMax);
|
||||
/* do not split incompressible data though:
|
||||
* ensure a 3 bytes per full block overhead limit.
|
||||
* Note: as a consequence, the first full block skips the splitting detector.
|
||||
*/
|
||||
if (savings < 3) return 128 KB;
|
||||
/* dynamic splitting has a cpu cost for analysis,
|
||||
* due to that cost it's only used for higher levels */
|
||||
if (strat >= ZSTD_btopt)
|
||||
return ZSTD_splitBlock(src, srcSize, blockSizeMax, split_lvl2, cctx->tmpWorkspace, cctx->tmpWkspSize);
|
||||
if (strat >= ZSTD_lazy2)
|
||||
return ZSTD_splitBlock(src, srcSize, blockSizeMax, split_lvl1, cctx->tmpWorkspace, cctx->tmpWkspSize);
|
||||
/* blind split strategy
|
||||
* heuristic value, tested as being "generally better".
|
||||
* no cpu cost, but can over-split homegeneous data.
|
||||
*/
|
||||
return 92 KB;
|
||||
}
|
||||
|
||||
/*! ZSTD_compress_frameChunk() :
|
||||
* Compress a chunk of data into one or multiple blocks.
|
||||
* All blocks will be terminated, all input will be consumed.
|
||||
@@ -4496,29 +4529,31 @@ static size_t ZSTD_compress_frameChunk(ZSTD_CCtx* cctx,
|
||||
const void* src, size_t srcSize,
|
||||
U32 lastFrameChunk)
|
||||
{
|
||||
size_t blockSize = cctx->blockSize;
|
||||
size_t blockSizeMax = cctx->blockSize;
|
||||
size_t remaining = srcSize;
|
||||
const BYTE* ip = (const BYTE*)src;
|
||||
BYTE* const ostart = (BYTE*)dst;
|
||||
BYTE* op = ostart;
|
||||
U32 const maxDist = (U32)1 << cctx->appliedParams.cParams.windowLog;
|
||||
S64 savings = (S64)cctx->consumedSrcSize - (S64)cctx->producedCSize;
|
||||
|
||||
assert(cctx->appliedParams.cParams.windowLog <= ZSTD_WINDOWLOG_MAX);
|
||||
|
||||
DEBUGLOG(4, "ZSTD_compress_frameChunk (blockSize=%u)", (unsigned)blockSize);
|
||||
DEBUGLOG(4, "ZSTD_compress_frameChunk (blockSizeMax=%u)", (unsigned)blockSizeMax);
|
||||
if (cctx->appliedParams.fParams.checksumFlag && srcSize)
|
||||
XXH64_update(&cctx->xxhState, src, srcSize);
|
||||
|
||||
while (remaining) {
|
||||
ZSTD_matchState_t* const ms = &cctx->blockState.matchState;
|
||||
U32 const lastBlock = lastFrameChunk & (blockSize >= remaining);
|
||||
size_t const blockSize = ZSTD_optimalBlockSize(cctx, ip, remaining, blockSizeMax, cctx->appliedParams.cParams.strategy, savings);
|
||||
U32 const lastBlock = lastFrameChunk & (blockSize == remaining);
|
||||
assert(blockSize <= remaining);
|
||||
|
||||
/* TODO: See 3090. We reduced MIN_CBLOCK_SIZE from 3 to 2 so to compensate we are adding
|
||||
* additional 1. We need to revisit and change this logic to be more consistent */
|
||||
RETURN_ERROR_IF(dstCapacity < ZSTD_blockHeaderSize + MIN_CBLOCK_SIZE + 1,
|
||||
dstSize_tooSmall,
|
||||
"not enough space to store compressed block");
|
||||
if (remaining < blockSize) blockSize = remaining;
|
||||
|
||||
ZSTD_overflowCorrectIfNeeded(
|
||||
ms, &cctx->workspace, &cctx->appliedParams, ip, ip + blockSize);
|
||||
@@ -4556,6 +4591,21 @@ static size_t ZSTD_compress_frameChunk(ZSTD_CCtx* cctx,
|
||||
}
|
||||
} /* if (ZSTD_useTargetCBlockSize(&cctx->appliedParams))*/
|
||||
|
||||
/* @savings is employed to ensure that splitting doesn't worsen expansion of incompressible data.
|
||||
* Without splitting, the maximum expansion is 3 bytes per full block.
|
||||
* An adversarial input could attempt to fudge the split detector,
|
||||
* and make it split incompressible data, resulting in more block headers.
|
||||
* Note that, since ZSTD_COMPRESSBOUND() assumes a worst case scenario of 1KB per block,
|
||||
* and the splitter never creates blocks that small (current lower limit is 8 KB),
|
||||
* there is already no risk to expand beyond ZSTD_COMPRESSBOUND() limit.
|
||||
* But if the goal is to not expand by more than 3-bytes per 128 KB full block,
|
||||
* then yes, it becomes possible to make the block splitter oversplit incompressible data.
|
||||
* Using @savings, we enforce an even more conservative condition,
|
||||
* requiring the presence of enough savings (at least 3 bytes) to authorize splitting,
|
||||
* otherwise only full blocks are used.
|
||||
* But being conservative is fine,
|
||||
* since splitting barely compressible blocks is not fruitful anyway */
|
||||
savings += (S64)blockSize - (S64)cSize;
|
||||
|
||||
ip += blockSize;
|
||||
assert(remaining >= blockSize);
|
||||
@@ -5022,7 +5072,7 @@ size_t ZSTD_loadCEntropy(ZSTD_compressedBlockState_t* bs, void* workspace,
|
||||
RETURN_ERROR_IF(bs->rep[u] > dictContentSize, dictionary_corrupted, "");
|
||||
} } }
|
||||
|
||||
return dictPtr - (const BYTE*)dict;
|
||||
return (size_t)(dictPtr - (const BYTE*)dict);
|
||||
}
|
||||
|
||||
/* Dictionary format :
|
||||
@@ -5145,11 +5195,11 @@ static size_t ZSTD_compressBegin_internal(ZSTD_CCtx* cctx,
|
||||
cctx->blockState.prevCBlock, &cctx->blockState.matchState,
|
||||
&cctx->ldmState, &cctx->workspace, &cctx->appliedParams, cdict->dictContent,
|
||||
cdict->dictContentSize, cdict->dictContentType, dtlm,
|
||||
ZSTD_tfp_forCCtx, cctx->entropyWorkspace)
|
||||
ZSTD_tfp_forCCtx, cctx->tmpWorkspace)
|
||||
: ZSTD_compress_insertDictionary(
|
||||
cctx->blockState.prevCBlock, &cctx->blockState.matchState,
|
||||
&cctx->ldmState, &cctx->workspace, &cctx->appliedParams, dict, dictSize,
|
||||
dictContentType, dtlm, ZSTD_tfp_forCCtx, cctx->entropyWorkspace);
|
||||
dictContentType, dtlm, ZSTD_tfp_forCCtx, cctx->tmpWorkspace);
|
||||
FORWARD_IF_ERROR(dictID, "ZSTD_compress_insertDictionary failed");
|
||||
assert(dictID <= UINT_MAX);
|
||||
cctx->dictID = (U32)dictID;
|
||||
@@ -6847,7 +6897,7 @@ ZSTD_compressSequences_internal(ZSTD_CCtx* cctx,
|
||||
&cctx->appliedParams,
|
||||
op + ZSTD_blockHeaderSize /* Leave space for block header */, dstCapacity - ZSTD_blockHeaderSize,
|
||||
blockSize,
|
||||
cctx->entropyWorkspace, ENTROPY_WORKSPACE_SIZE /* statically allocated in resetCCtx */,
|
||||
cctx->tmpWorkspace, cctx->tmpWkspSize /* statically allocated in resetCCtx */,
|
||||
cctx->bmi2);
|
||||
FORWARD_IF_ERROR(compressedSeqsSize, "Compressing sequences of block failed");
|
||||
DEBUGLOG(5, "Compressed sequences size: %zu", compressedSeqsSize);
|
||||
|
||||
@@ -24,6 +24,7 @@
|
||||
# include "zstdmt_compress.h"
|
||||
#endif
|
||||
#include "../common/bits.h" /* ZSTD_highbit32, ZSTD_NbCommonBytes */
|
||||
#include "zstd_preSplit.h" /* ZSTD_SLIPBLOCK_WORKSPACESIZE */
|
||||
|
||||
#if defined (__cplusplus)
|
||||
extern "C" {
|
||||
@@ -376,6 +377,7 @@ struct ZSTD_CCtx_params_s {
|
||||
|
||||
#define COMPRESS_SEQUENCES_WORKSPACE_SIZE (sizeof(unsigned) * (MaxSeq + 2))
|
||||
#define ENTROPY_WORKSPACE_SIZE (HUF_WORKSPACE_SIZE + COMPRESS_SEQUENCES_WORKSPACE_SIZE)
|
||||
#define TMP_WORKSPACE_SIZE (MAX(ENTROPY_WORKSPACE_SIZE, ZSTD_SLIPBLOCK_WORKSPACESIZE))
|
||||
|
||||
/**
|
||||
* Indicates whether this compression proceeds directly from user-provided
|
||||
@@ -432,7 +434,8 @@ struct ZSTD_CCtx_s {
|
||||
size_t maxNbLdmSequences;
|
||||
rawSeqStore_t externSeqStore; /* Mutable reference to external sequences */
|
||||
ZSTD_blockState_t blockState;
|
||||
U32* entropyWorkspace; /* entropy workspace of ENTROPY_WORKSPACE_SIZE bytes */
|
||||
void* tmpWorkspace; /* used as substitute of stack space - must be aligned for S64 type */
|
||||
size_t tmpWkspSize;
|
||||
|
||||
/* Whether we are streaming or not */
|
||||
ZSTD_buffered_policy_e bufferedPolicy;
|
||||
@@ -798,8 +801,8 @@ ZSTD_count_2segments(const BYTE* ip, const BYTE* match,
|
||||
size_t const matchLength = ZSTD_count(ip, match, vEnd);
|
||||
if (match + matchLength != mEnd) return matchLength;
|
||||
DEBUGLOG(7, "ZSTD_count_2segments: found a 2-parts match (current length==%zu)", matchLength);
|
||||
DEBUGLOG(7, "distance from match beginning to end dictionary = %zi", mEnd - match);
|
||||
DEBUGLOG(7, "distance from current pos to end buffer = %zi", iEnd - ip);
|
||||
DEBUGLOG(7, "distance from match beginning to end dictionary = %i", (int)(mEnd - match));
|
||||
DEBUGLOG(7, "distance from current pos to end buffer = %i", (int)(iEnd - ip));
|
||||
DEBUGLOG(7, "next byte : ip==%02X, istart==%02X", ip[matchLength], *iStart);
|
||||
DEBUGLOG(7, "final match length = %zu", matchLength + ZSTD_count(ip+matchLength, iStart, iEnd));
|
||||
return matchLength + ZSTD_count(ip+matchLength, iStart, iEnd);
|
||||
|
||||
@@ -674,7 +674,7 @@ size_t ZSTD_compressSuperBlock(ZSTD_CCtx* zc,
|
||||
&zc->blockState.nextCBlock->entropy,
|
||||
&zc->appliedParams,
|
||||
&entropyMetadata,
|
||||
zc->entropyWorkspace, ENTROPY_WORKSPACE_SIZE /* statically allocated in resetCCtx */), "");
|
||||
zc->tmpWorkspace, zc->tmpWkspSize /* statically allocated in resetCCtx */), "");
|
||||
|
||||
return ZSTD_compressSubBlock_multi(&zc->seqStore,
|
||||
zc->blockState.prevCBlock,
|
||||
@@ -684,5 +684,5 @@ size_t ZSTD_compressSuperBlock(ZSTD_CCtx* zc,
|
||||
dst, dstCapacity,
|
||||
src, srcSize,
|
||||
zc->bmi2, lastBlock,
|
||||
zc->entropyWorkspace, ENTROPY_WORKSPACE_SIZE /* statically allocated in resetCCtx */);
|
||||
zc->tmpWorkspace, zc->tmpWkspSize /* statically allocated in resetCCtx */);
|
||||
}
|
||||
|
||||
+38
-14
@@ -17,6 +17,7 @@
|
||||
#include "../common/allocations.h" /* ZSTD_customMalloc, ZSTD_customFree */
|
||||
#include "../common/zstd_internal.h"
|
||||
#include "../common/portability_macros.h"
|
||||
#include "../common/compiler.h" /* ZS2_isPower2 */
|
||||
|
||||
#if defined (__cplusplus)
|
||||
extern "C" {
|
||||
@@ -206,9 +207,9 @@ MEM_STATIC void ZSTD_cwksp_assert_internal_consistency(ZSTD_cwksp* ws) {
|
||||
/**
|
||||
* Align must be a power of 2.
|
||||
*/
|
||||
MEM_STATIC size_t ZSTD_cwksp_align(size_t size, size_t const align) {
|
||||
MEM_STATIC size_t ZSTD_cwksp_align(size_t size, size_t align) {
|
||||
size_t const mask = align - 1;
|
||||
assert((align & mask) == 0);
|
||||
assert(ZSTD_isPower2(align));
|
||||
return (size + mask) & ~mask;
|
||||
}
|
||||
|
||||
@@ -222,7 +223,7 @@ MEM_STATIC size_t ZSTD_cwksp_align(size_t size, size_t const align) {
|
||||
* to figure out how much space you need for the matchState tables. Everything
|
||||
* else is though.
|
||||
*
|
||||
* Do not use for sizing aligned buffers. Instead, use ZSTD_cwksp_aligned_alloc_size().
|
||||
* Do not use for sizing aligned buffers. Instead, use ZSTD_cwksp_aligned64_alloc_size().
|
||||
*/
|
||||
MEM_STATIC size_t ZSTD_cwksp_alloc_size(size_t size) {
|
||||
if (size == 0)
|
||||
@@ -234,12 +235,16 @@ MEM_STATIC size_t ZSTD_cwksp_alloc_size(size_t size) {
|
||||
#endif
|
||||
}
|
||||
|
||||
MEM_STATIC size_t ZSTD_cwksp_aligned_alloc_size(size_t size, size_t alignment) {
|
||||
return ZSTD_cwksp_alloc_size(ZSTD_cwksp_align(size, alignment));
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns an adjusted alloc size that is the nearest larger multiple of 64 bytes.
|
||||
* Used to determine the number of bytes required for a given "aligned".
|
||||
*/
|
||||
MEM_STATIC size_t ZSTD_cwksp_aligned_alloc_size(size_t size) {
|
||||
return ZSTD_cwksp_alloc_size(ZSTD_cwksp_align(size, ZSTD_CWKSP_ALIGNMENT_BYTES));
|
||||
MEM_STATIC size_t ZSTD_cwksp_aligned64_alloc_size(size_t size) {
|
||||
return ZSTD_cwksp_aligned_alloc_size(size, ZSTD_CWKSP_ALIGNMENT_BYTES);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -262,7 +267,7 @@ MEM_STATIC size_t ZSTD_cwksp_slack_space_required(void) {
|
||||
MEM_STATIC size_t ZSTD_cwksp_bytes_to_align_ptr(void* ptr, const size_t alignBytes) {
|
||||
size_t const alignBytesMask = alignBytes - 1;
|
||||
size_t const bytes = (alignBytes - ((size_t)ptr & (alignBytesMask))) & alignBytesMask;
|
||||
assert((alignBytes & alignBytesMask) == 0);
|
||||
assert(ZSTD_isPower2(alignBytes));
|
||||
assert(bytes < alignBytes);
|
||||
return bytes;
|
||||
}
|
||||
@@ -271,8 +276,12 @@ MEM_STATIC size_t ZSTD_cwksp_bytes_to_align_ptr(void* ptr, const size_t alignByt
|
||||
* Returns the initial value for allocStart which is used to determine the position from
|
||||
* which we can allocate from the end of the workspace.
|
||||
*/
|
||||
MEM_STATIC void* ZSTD_cwksp_initialAllocStart(ZSTD_cwksp* ws) {
|
||||
return (void*)((size_t)ws->workspaceEnd & ~(ZSTD_CWKSP_ALIGNMENT_BYTES-1));
|
||||
MEM_STATIC void* ZSTD_cwksp_initialAllocStart(ZSTD_cwksp* ws)
|
||||
{
|
||||
char* endPtr = (char*)ws->workspaceEnd;
|
||||
assert(ZSTD_isPower2(ZSTD_CWKSP_ALIGNMENT_BYTES));
|
||||
endPtr = endPtr - ((size_t)endPtr % ZSTD_CWKSP_ALIGNMENT_BYTES);
|
||||
return (void*)endPtr;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -404,7 +413,7 @@ MEM_STATIC void* ZSTD_cwksp_reserve_aligned_init_once(ZSTD_cwksp* ws, size_t byt
|
||||
{
|
||||
size_t const alignedBytes = ZSTD_cwksp_align(bytes, ZSTD_CWKSP_ALIGNMENT_BYTES);
|
||||
void* ptr = ZSTD_cwksp_reserve_internal(ws, alignedBytes, ZSTD_cwksp_alloc_aligned_init_once);
|
||||
assert(((size_t)ptr & (ZSTD_CWKSP_ALIGNMENT_BYTES-1))== 0);
|
||||
assert(((size_t)ptr & (ZSTD_CWKSP_ALIGNMENT_BYTES-1)) == 0);
|
||||
if(ptr && ptr < ws->initOnceStart) {
|
||||
/* We assume the memory following the current allocation is either:
|
||||
* 1. Not usable as initOnce memory (end of workspace)
|
||||
@@ -424,11 +433,12 @@ MEM_STATIC void* ZSTD_cwksp_reserve_aligned_init_once(ZSTD_cwksp* ws, size_t byt
|
||||
/**
|
||||
* Reserves and returns memory sized on and aligned on ZSTD_CWKSP_ALIGNMENT_BYTES (64 bytes).
|
||||
*/
|
||||
MEM_STATIC void* ZSTD_cwksp_reserve_aligned(ZSTD_cwksp* ws, size_t bytes)
|
||||
MEM_STATIC void* ZSTD_cwksp_reserve_aligned64(ZSTD_cwksp* ws, size_t bytes)
|
||||
{
|
||||
void* ptr = ZSTD_cwksp_reserve_internal(ws, ZSTD_cwksp_align(bytes, ZSTD_CWKSP_ALIGNMENT_BYTES),
|
||||
ZSTD_cwksp_alloc_aligned);
|
||||
assert(((size_t)ptr & (ZSTD_CWKSP_ALIGNMENT_BYTES-1))== 0);
|
||||
void* const ptr = ZSTD_cwksp_reserve_internal(ws,
|
||||
ZSTD_cwksp_align(bytes, ZSTD_CWKSP_ALIGNMENT_BYTES),
|
||||
ZSTD_cwksp_alloc_aligned);
|
||||
assert(((size_t)ptr & (ZSTD_CWKSP_ALIGNMENT_BYTES-1)) == 0);
|
||||
return ptr;
|
||||
}
|
||||
|
||||
@@ -474,7 +484,7 @@ MEM_STATIC void* ZSTD_cwksp_reserve_table(ZSTD_cwksp* ws, size_t bytes)
|
||||
#endif
|
||||
|
||||
assert((bytes & (ZSTD_CWKSP_ALIGNMENT_BYTES-1)) == 0);
|
||||
assert(((size_t)alloc & (ZSTD_CWKSP_ALIGNMENT_BYTES-1))== 0);
|
||||
assert(((size_t)alloc & (ZSTD_CWKSP_ALIGNMENT_BYTES-1)) == 0);
|
||||
return alloc;
|
||||
}
|
||||
|
||||
@@ -520,6 +530,20 @@ MEM_STATIC void* ZSTD_cwksp_reserve_object(ZSTD_cwksp* ws, size_t bytes)
|
||||
|
||||
return alloc;
|
||||
}
|
||||
/**
|
||||
* with alignment control
|
||||
* Note : should happen only once, at workspace first initialization
|
||||
*/
|
||||
MEM_STATIC void* ZSTD_cwksp_reserve_object_aligned(ZSTD_cwksp* ws, size_t byteSize, size_t alignment)
|
||||
{
|
||||
size_t const mask = alignment - 1;
|
||||
size_t const surplus = (alignment > sizeof(void*)) ? alignment - sizeof(void*) : 0;
|
||||
void* const start = ZSTD_cwksp_reserve_object(ws, byteSize + surplus);
|
||||
if (start == NULL) return NULL;
|
||||
if (surplus == 0) return start;
|
||||
assert(ZSTD_isPower2(alignment));
|
||||
return (void*)(((size_t)start + surplus) & ~mask);
|
||||
}
|
||||
|
||||
MEM_STATIC void ZSTD_cwksp_mark_tables_dirty(ZSTD_cwksp* ws)
|
||||
{
|
||||
|
||||
@@ -1197,7 +1197,7 @@ ZSTD_compressBlock_opt_generic(ZSTD_matchState_t* ms,
|
||||
for (cur = 1; cur <= last_pos; cur++) {
|
||||
const BYTE* const inr = ip + cur;
|
||||
assert(cur <= ZSTD_OPT_NUM);
|
||||
DEBUGLOG(7, "cPos:%zi==rPos:%u", inr-istart, cur);
|
||||
DEBUGLOG(7, "cPos:%i==rPos:%u", (int)(inr-istart), cur);
|
||||
|
||||
/* Fix current position with one literal if cheaper */
|
||||
{ U32 const litlen = opt[cur-1].litlen + 1;
|
||||
@@ -1207,8 +1207,8 @@ ZSTD_compressBlock_opt_generic(ZSTD_matchState_t* ms,
|
||||
assert(price < 1000000000); /* overflow check */
|
||||
if (price <= opt[cur].price) {
|
||||
ZSTD_optimal_t const prevMatch = opt[cur];
|
||||
DEBUGLOG(7, "cPos:%zi==rPos:%u : better price (%.2f<=%.2f) using literal (ll==%u) (hist:%u,%u,%u)",
|
||||
inr-istart, cur, ZSTD_fCost(price), ZSTD_fCost(opt[cur].price), litlen,
|
||||
DEBUGLOG(7, "cPos:%i==rPos:%u : better price (%.2f<=%.2f) using literal (ll==%u) (hist:%u,%u,%u)",
|
||||
(int)(inr-istart), cur, ZSTD_fCost(price), ZSTD_fCost(opt[cur].price), litlen,
|
||||
opt[cur-1].rep[0], opt[cur-1].rep[1], opt[cur-1].rep[2]);
|
||||
opt[cur] = opt[cur-1];
|
||||
opt[cur].litlen = litlen;
|
||||
@@ -1240,8 +1240,8 @@ ZSTD_compressBlock_opt_generic(ZSTD_matchState_t* ms,
|
||||
}
|
||||
}
|
||||
} else {
|
||||
DEBUGLOG(7, "cPos:%zi==rPos:%u : literal would cost more (%.2f>%.2f)",
|
||||
inr-istart, cur, ZSTD_fCost(price), ZSTD_fCost(opt[cur].price));
|
||||
DEBUGLOG(7, "cPos:%i==rPos:%u : literal would cost more (%.2f>%.2f)",
|
||||
(int)(inr-istart), cur, ZSTD_fCost(price), ZSTD_fCost(opt[cur].price));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1284,8 +1284,8 @@ ZSTD_compressBlock_opt_generic(ZSTD_matchState_t* ms,
|
||||
}
|
||||
|
||||
{ U32 const longestML = matches[nbMatches-1].len;
|
||||
DEBUGLOG(7, "cPos:%zi==rPos:%u, found %u matches, of longest ML=%u",
|
||||
inr-istart, cur, nbMatches, longestML);
|
||||
DEBUGLOG(7, "cPos:%i==rPos:%u, found %u matches, of longest ML=%u",
|
||||
(int)(inr-istart), cur, nbMatches, longestML);
|
||||
|
||||
if ( (longestML > sufficient_len)
|
||||
|| (cur + longestML >= ZSTD_OPT_NUM)
|
||||
@@ -1411,8 +1411,8 @@ _shortestPath: /* cur, last_pos, best_mlen, best_off have to be set */
|
||||
U32 const mlen = opt[storePos].mlen;
|
||||
U32 const offBase = opt[storePos].off;
|
||||
U32 const advance = llen + mlen;
|
||||
DEBUGLOG(6, "considering seq starting at %zi, llen=%u, mlen=%u",
|
||||
anchor - istart, (unsigned)llen, (unsigned)mlen);
|
||||
DEBUGLOG(6, "considering seq starting at %i, llen=%u, mlen=%u",
|
||||
(int)(anchor - istart), (unsigned)llen, (unsigned)mlen);
|
||||
|
||||
if (mlen==0) { /* only literals => must be last "sequence", actually starting a new stream of sequences */
|
||||
assert(storePos == storeEnd); /* must be last sequence */
|
||||
|
||||
@@ -0,0 +1,181 @@
|
||||
/*
|
||||
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This source code is licensed under both the BSD-style license (found in the
|
||||
* LICENSE file in the root directory of this source tree) and the GPLv2 (found
|
||||
* in the COPYING file in the root directory of this source tree).
|
||||
* You may select, at your option, one of the above-listed licenses.
|
||||
*/
|
||||
|
||||
#include "../common/compiler.h" /* ZSTD_ALIGNOF */
|
||||
#include "../common/mem.h" /* S64 */
|
||||
#include "../common/zstd_deps.h" /* ZSTD_memset */
|
||||
#include "../common/zstd_internal.h" /* ZSTD_STATIC_ASSERT */
|
||||
#include "zstd_preSplit.h"
|
||||
|
||||
|
||||
#define BLOCKSIZE_MIN 3500
|
||||
#define THRESHOLD_PENALTY_RATE 16
|
||||
#define THRESHOLD_BASE (THRESHOLD_PENALTY_RATE - 2)
|
||||
#define THRESHOLD_PENALTY 3
|
||||
|
||||
#define HASHLENGTH 2
|
||||
#define HASHLOG 10
|
||||
#define HASHTABLESIZE (1 << HASHLOG)
|
||||
#define HASHMASK (HASHTABLESIZE - 1)
|
||||
#define KNUTH 0x9e3779b9
|
||||
|
||||
static unsigned hash2(const void *p)
|
||||
{
|
||||
return (U32)(MEM_read16(p)) * KNUTH >> (32 - HASHLOG);
|
||||
}
|
||||
|
||||
|
||||
typedef struct {
|
||||
unsigned events[HASHTABLESIZE];
|
||||
size_t nbEvents;
|
||||
} Fingerprint;
|
||||
typedef struct {
|
||||
Fingerprint pastEvents;
|
||||
Fingerprint newEvents;
|
||||
} FPStats;
|
||||
|
||||
static void initStats(FPStats* fpstats)
|
||||
{
|
||||
ZSTD_memset(fpstats, 0, sizeof(FPStats));
|
||||
}
|
||||
|
||||
FORCE_INLINE_TEMPLATE void addEvents_generic(Fingerprint* fp, const void* src, size_t srcSize, size_t samplingRate)
|
||||
{
|
||||
const char* p = (const char*)src;
|
||||
size_t limit = srcSize - HASHLENGTH + 1;
|
||||
size_t n;
|
||||
assert(srcSize >= HASHLENGTH);
|
||||
for (n = 0; n < limit; n+=samplingRate) {
|
||||
fp->events[hash2(p+n)]++;
|
||||
}
|
||||
fp->nbEvents += limit/samplingRate;
|
||||
}
|
||||
|
||||
#define ADDEVENTS_RATE(_rate) ZSTD_addEvents_##_rate
|
||||
|
||||
#define ZSTD_GEN_ADDEVENTS_SAMPLE(_rate) \
|
||||
static void ADDEVENTS_RATE(_rate)(Fingerprint* fp, const void* src, size_t srcSize) \
|
||||
{ \
|
||||
addEvents_generic(fp, src, srcSize, _rate); \
|
||||
}
|
||||
|
||||
ZSTD_GEN_ADDEVENTS_SAMPLE(1)
|
||||
ZSTD_GEN_ADDEVENTS_SAMPLE(5)
|
||||
|
||||
|
||||
typedef void (*addEvents_f)(Fingerprint* fp, const void* src, size_t srcSize);
|
||||
|
||||
static void recordFingerprint(Fingerprint* fp, const void* src, size_t s, addEvents_f addEvents)
|
||||
{
|
||||
ZSTD_memset(fp, 0, sizeof(*fp));
|
||||
addEvents(fp, src, s);
|
||||
}
|
||||
|
||||
static U64 abs64(S64 s64) { return (U64)((s64 < 0) ? -s64 : s64); }
|
||||
|
||||
static U64 fpDistance(const Fingerprint* fp1, const Fingerprint* fp2)
|
||||
{
|
||||
U64 distance = 0;
|
||||
size_t n;
|
||||
for (n = 0; n < HASHTABLESIZE; n++) {
|
||||
distance +=
|
||||
abs64((S64)fp1->events[n] * (S64)fp2->nbEvents - (S64)fp2->events[n] * (S64)fp1->nbEvents);
|
||||
}
|
||||
return distance;
|
||||
}
|
||||
|
||||
/* Compare newEvents with pastEvents
|
||||
* return 1 when considered "too different"
|
||||
*/
|
||||
static int compareFingerprints(const Fingerprint* ref,
|
||||
const Fingerprint* newfp,
|
||||
int penalty)
|
||||
{
|
||||
assert(ref->nbEvents > 0);
|
||||
assert(newfp->nbEvents > 0);
|
||||
{ U64 p50 = (U64)ref->nbEvents * (U64)newfp->nbEvents;
|
||||
U64 deviation = fpDistance(ref, newfp);
|
||||
U64 threshold = p50 * (U64)(THRESHOLD_BASE + penalty) / THRESHOLD_PENALTY_RATE;
|
||||
return deviation >= threshold;
|
||||
}
|
||||
}
|
||||
|
||||
static void mergeEvents(Fingerprint* acc, const Fingerprint* newfp)
|
||||
{
|
||||
size_t n;
|
||||
for (n = 0; n < HASHTABLESIZE; n++) {
|
||||
acc->events[n] += newfp->events[n];
|
||||
}
|
||||
acc->nbEvents += newfp->nbEvents;
|
||||
}
|
||||
|
||||
static void flushEvents(FPStats* fpstats)
|
||||
{
|
||||
size_t n;
|
||||
for (n = 0; n < HASHTABLESIZE; n++) {
|
||||
fpstats->pastEvents.events[n] = fpstats->newEvents.events[n];
|
||||
}
|
||||
fpstats->pastEvents.nbEvents = fpstats->newEvents.nbEvents;
|
||||
ZSTD_memset(&fpstats->newEvents, 0, sizeof(fpstats->newEvents));
|
||||
}
|
||||
|
||||
static void removeEvents(Fingerprint* acc, const Fingerprint* slice)
|
||||
{
|
||||
size_t n;
|
||||
for (n = 0; n < HASHTABLESIZE; n++) {
|
||||
assert(acc->events[n] >= slice->events[n]);
|
||||
acc->events[n] -= slice->events[n];
|
||||
}
|
||||
acc->nbEvents -= slice->nbEvents;
|
||||
}
|
||||
|
||||
#define CHUNKSIZE (8 << 10)
|
||||
/* Note: technically, we use CHUNKSIZE, so that's 8 KB */
|
||||
static size_t ZSTD_splitBlock_byChunks(const void* src, size_t srcSize,
|
||||
size_t blockSizeMax, addEvents_f f,
|
||||
void* workspace, size_t wkspSize)
|
||||
{
|
||||
FPStats* const fpstats = (FPStats*)workspace;
|
||||
const char* p = (const char*)src;
|
||||
int penalty = THRESHOLD_PENALTY;
|
||||
size_t pos = 0;
|
||||
if (srcSize <= blockSizeMax) return srcSize;
|
||||
assert(blockSizeMax == (128 << 10));
|
||||
assert(workspace != NULL);
|
||||
assert((size_t)workspace % ZSTD_ALIGNOF(FPStats) == 0);
|
||||
ZSTD_STATIC_ASSERT(ZSTD_SLIPBLOCK_WORKSPACESIZE >= sizeof(FPStats));
|
||||
assert(wkspSize >= sizeof(FPStats)); (void)wkspSize;
|
||||
|
||||
initStats(fpstats);
|
||||
recordFingerprint(&fpstats->pastEvents, p, CHUNKSIZE, f);
|
||||
for (pos = CHUNKSIZE; pos <= blockSizeMax - CHUNKSIZE; pos += CHUNKSIZE) {
|
||||
recordFingerprint(&fpstats->newEvents, p + pos, CHUNKSIZE, f);
|
||||
if (compareFingerprints(&fpstats->pastEvents, &fpstats->newEvents, penalty)) {
|
||||
return pos;
|
||||
} else {
|
||||
mergeEvents(&fpstats->pastEvents, &fpstats->newEvents);
|
||||
if (penalty > 0) penalty--;
|
||||
}
|
||||
}
|
||||
assert(pos == blockSizeMax);
|
||||
return blockSizeMax;
|
||||
(void)flushEvents; (void)removeEvents;
|
||||
}
|
||||
|
||||
size_t ZSTD_splitBlock(const void* src, size_t srcSize,
|
||||
size_t blockSizeMax, ZSTD_SplitBlock_strategy_e splitStrat,
|
||||
void* workspace, size_t wkspSize)
|
||||
{
|
||||
if (splitStrat == split_lvl2)
|
||||
return ZSTD_splitBlock_byChunks(src, srcSize, blockSizeMax, ADDEVENTS_RATE(1), workspace, wkspSize);
|
||||
|
||||
assert(splitStrat == split_lvl1);
|
||||
return ZSTD_splitBlock_byChunks(src, srcSize, blockSizeMax, ADDEVENTS_RATE(5), workspace, wkspSize);
|
||||
}
|
||||
@@ -0,0 +1,40 @@
|
||||
/*
|
||||
* Copyright (c) Meta Platforms, Inc. and affiliates.
|
||||
* All rights reserved.
|
||||
*
|
||||
* This source code is licensed under both the BSD-style license (found in the
|
||||
* LICENSE file in the root directory of this source tree) and the GPLv2 (found
|
||||
* in the COPYING file in the root directory of this source tree).
|
||||
* You may select, at your option, one of the above-listed licenses.
|
||||
*/
|
||||
|
||||
#ifndef ZSTD_PRESPLIT_H
|
||||
#define ZSTD_PRESPLIT_H
|
||||
|
||||
#include <stddef.h> /* size_t */
|
||||
|
||||
#if defined (__cplusplus)
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
typedef enum { split_lvl1, split_lvl2 } ZSTD_SplitBlock_strategy_e;
|
||||
|
||||
#define ZSTD_SLIPBLOCK_WORKSPACESIZE 8208
|
||||
|
||||
/* note:
|
||||
* @workspace must be aligned on 8-bytes boundaries
|
||||
* @wkspSize must be at least >= ZSTD_SLIPBLOCK_WORKSPACESIZE
|
||||
* note2:
|
||||
* for the time being, this function only accepts full 128 KB blocks,
|
||||
* therefore @blockSizeMax must be == 128 KB.
|
||||
* This could be extended to smaller sizes in the future.
|
||||
*/
|
||||
size_t ZSTD_splitBlock(const void* src, size_t srcSize,
|
||||
size_t blockSizeMax, ZSTD_SplitBlock_strategy_e splitStrat,
|
||||
void* workspace, size_t wkspSize);
|
||||
|
||||
#if defined (__cplusplus)
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* ZSTD_PRESPLIT_H */
|
||||
@@ -1057,7 +1057,7 @@ static size_t ZSTD_decompressFrame(ZSTD_DCtx* dctx,
|
||||
}
|
||||
ZSTD_DCtx_trace_end(dctx, (U64)(op-ostart), (U64)(ip-istart), /* streaming */ 0);
|
||||
/* Allow caller to get size read */
|
||||
DEBUGLOG(4, "ZSTD_decompressFrame: decompressed frame of size %zi, consuming %zi bytes of input", op-ostart, ip - (const BYTE*)*srcPtr);
|
||||
DEBUGLOG(4, "ZSTD_decompressFrame: decompressed frame of size %i, consuming %i bytes of input", (int)(op-ostart), (int)(ip - (const BYTE*)*srcPtr));
|
||||
*srcPtr = ip;
|
||||
*srcSizePtr = remainingSrcSize;
|
||||
return (size_t)(op-ostart);
|
||||
|
||||
+11
-8
@@ -3653,16 +3653,19 @@ static int basicUnitTests(U32 const seed, double compressibility)
|
||||
ZSTD_freeDCtx(dctx);
|
||||
}
|
||||
|
||||
/* long rle test */
|
||||
/* rle detection test: must compress better blocks with a single identical byte repeated */
|
||||
{ size_t sampleSize = 0;
|
||||
size_t expectedCompressedSize = 39; /* block 1, 2: compressed, block 3: RLE, zstd 1.4.4 */
|
||||
DISPLAYLEVEL(3, "test%3i : Long RLE test : ", testNb++);
|
||||
memset((char*)CNBuffer+sampleSize, 'B', 256 KB - 1);
|
||||
sampleSize += 256 KB - 1;
|
||||
memset((char*)CNBuffer+sampleSize, 'A', 96 KB);
|
||||
sampleSize += 96 KB;
|
||||
size_t maxCompressedSize = 46; /* block 1, 2: compressed, block 3: RLE, zstd 1.4.4 */
|
||||
DISPLAYLEVEL(3, "test%3i : RLE detection test : ", testNb++);
|
||||
memset((char*)CNBuffer+sampleSize, 'B', 256 KB - 2);
|
||||
sampleSize += 256 KB - 2;
|
||||
memset((char*)CNBuffer+sampleSize, 'A', 100 KB);
|
||||
sampleSize += 100 KB;
|
||||
cSize = ZSTD_compress(compressedBuffer, ZSTD_compressBound(sampleSize), CNBuffer, sampleSize, 1);
|
||||
if (ZSTD_isError(cSize) || cSize > expectedCompressedSize) goto _output_error;
|
||||
if (ZSTD_isError(cSize) || cSize > maxCompressedSize) {
|
||||
DISPLAYLEVEL(4, "error: cSize %u > %u expected ! \n", (unsigned)cSize, (unsigned)maxCompressedSize);
|
||||
goto _output_error;
|
||||
}
|
||||
{ CHECK_NEWV(regenSize, ZSTD_decompress(decodedBuffer, sampleSize, compressedBuffer, cSize));
|
||||
if (regenSize!=sampleSize) goto _output_error; }
|
||||
DISPLAYLEVEL(3, "OK \n");
|
||||
|
||||
+643
-643
@@ -1,63 +1,63 @@
|
||||
Data, Config, Method, Total compressed size
|
||||
silesia.tar, level -5, compress simple, 6861055
|
||||
silesia.tar, level -3, compress simple, 6505483
|
||||
silesia.tar, level -1, compress simple, 6179047
|
||||
silesia.tar, level 0, compress simple, 4851407
|
||||
silesia.tar, level 1, compress simple, 5327717
|
||||
silesia.tar, level 3, compress simple, 4851407
|
||||
silesia.tar, level 4, compress simple, 4788821
|
||||
silesia.tar, level 5, compress simple, 4679004
|
||||
silesia.tar, level 6, compress simple, 4614561
|
||||
silesia.tar, level 7, compress simple, 4579828
|
||||
silesia.tar, level 9, compress simple, 4555448
|
||||
silesia.tar, level 13, compress simple, 4502956
|
||||
silesia.tar, level 16, compress simple, 4360385
|
||||
silesia.tar, level 19, compress simple, 4260939
|
||||
silesia.tar, uncompressed literals, compress simple, 4851407
|
||||
silesia.tar, uncompressed literals optimal, compress simple, 4260939
|
||||
silesia.tar, huffman literals, compress simple, 6179047
|
||||
github.tar, level -5, compress simple, 52115
|
||||
github.tar, level -3, compress simple, 45678
|
||||
github.tar, level -1, compress simple, 42560
|
||||
github.tar, level 0, compress simple, 38884
|
||||
github.tar, level 1, compress simple, 39200
|
||||
github.tar, level 3, compress simple, 38884
|
||||
github.tar, level 4, compress simple, 38880
|
||||
github.tar, level 5, compress simple, 39651
|
||||
github.tar, level 6, compress simple, 39282
|
||||
github.tar, level 7, compress simple, 38005
|
||||
silesia.tar, level -5, compress simple, 6860782
|
||||
silesia.tar, level -3, compress simple, 6507448
|
||||
silesia.tar, level -1, compress simple, 6175582
|
||||
silesia.tar, level 0, compress simple, 4843429
|
||||
silesia.tar, level 1, compress simple, 5316794
|
||||
silesia.tar, level 3, compress simple, 4843429
|
||||
silesia.tar, level 4, compress simple, 4780657
|
||||
silesia.tar, level 5, compress simple, 4669650
|
||||
silesia.tar, level 6, compress simple, 4604925
|
||||
silesia.tar, level 7, compress simple, 4570873
|
||||
silesia.tar, level 9, compress simple, 4537558
|
||||
silesia.tar, level 13, compress simple, 4484732
|
||||
silesia.tar, level 16, compress simple, 4355572
|
||||
silesia.tar, level 19, compress simple, 4257629
|
||||
silesia.tar, uncompressed literals, compress simple, 4843429
|
||||
silesia.tar, uncompressed literals optimal, compress simple, 4257629
|
||||
silesia.tar, huffman literals, compress simple, 6175582
|
||||
github.tar, level -5, compress simple, 52320
|
||||
github.tar, level -3, compress simple, 45823
|
||||
github.tar, level -1, compress simple, 42740
|
||||
github.tar, level 0, compress simple, 39073
|
||||
github.tar, level 1, compress simple, 39444
|
||||
github.tar, level 3, compress simple, 39073
|
||||
github.tar, level 4, compress simple, 39068
|
||||
github.tar, level 5, compress simple, 39808
|
||||
github.tar, level 6, compress simple, 39455
|
||||
github.tar, level 7, compress simple, 38168
|
||||
github.tar, level 9, compress simple, 36723
|
||||
github.tar, level 13, compress simple, 35501
|
||||
github.tar, level 16, compress simple, 40466
|
||||
github.tar, level 19, compress simple, 32262
|
||||
github.tar, uncompressed literals, compress simple, 38884
|
||||
github.tar, uncompressed literals, compress simple, 39073
|
||||
github.tar, uncompressed literals optimal, compress simple, 32262
|
||||
github.tar, huffman literals, compress simple, 42560
|
||||
silesia, level -5, compress cctx, 6857372
|
||||
silesia, level -3, compress cctx, 6503412
|
||||
silesia, level -1, compress cctx, 6172202
|
||||
silesia, level 0, compress cctx, 4839431
|
||||
silesia, level 1, compress cctx, 5306632
|
||||
silesia, level 3, compress cctx, 4839431
|
||||
silesia, level 4, compress cctx, 4776557
|
||||
silesia, level 5, compress cctx, 4667668
|
||||
silesia, level 6, compress cctx, 4604351
|
||||
silesia, level 7, compress cctx, 4570271
|
||||
silesia, level 9, compress cctx, 4545850
|
||||
silesia, level 13, compress cctx, 4493990
|
||||
silesia, level 16, compress cctx, 4359652
|
||||
silesia, level 19, compress cctx, 4266582
|
||||
silesia, long distance mode, compress cctx, 4839431
|
||||
silesia, multithreaded, compress cctx, 4839431
|
||||
silesia, multithreaded long distance mode, compress cctx, 4839431
|
||||
github.tar, huffman literals, compress simple, 42740
|
||||
silesia, level -5, compress cctx, 6857776
|
||||
silesia, level -3, compress cctx, 6504756
|
||||
silesia, level -1, compress cctx, 6174127
|
||||
silesia, level 0, compress cctx, 4838417
|
||||
silesia, level 1, compress cctx, 5306931
|
||||
silesia, level 3, compress cctx, 4838417
|
||||
silesia, level 4, compress cctx, 4775359
|
||||
silesia, level 5, compress cctx, 4666524
|
||||
silesia, level 6, compress cctx, 4602031
|
||||
silesia, level 7, compress cctx, 4567954
|
||||
silesia, level 9, compress cctx, 4540520
|
||||
silesia, level 13, compress cctx, 4488969
|
||||
silesia, level 16, compress cctx, 4356799
|
||||
silesia, level 19, compress cctx, 4265851
|
||||
silesia, long distance mode, compress cctx, 4838417
|
||||
silesia, multithreaded, compress cctx, 4838417
|
||||
silesia, multithreaded long distance mode, compress cctx, 4838417
|
||||
silesia, small window log, compress cctx, 7082907
|
||||
silesia, small hash log, compress cctx, 6526141
|
||||
silesia, small chain log, compress cctx, 4912197
|
||||
silesia, explicit params, compress cctx, 4794318
|
||||
silesia, uncompressed literals, compress cctx, 4839431
|
||||
silesia, uncompressed literals optimal, compress cctx, 4266582
|
||||
silesia, huffman literals, compress cctx, 6172202
|
||||
silesia, multithreaded with advanced params, compress cctx, 4839431
|
||||
silesia, small hash log, compress cctx, 6525510
|
||||
silesia, small chain log, compress cctx, 4912248
|
||||
silesia, explicit params, compress cctx, 4792640
|
||||
silesia, uncompressed literals, compress cctx, 4838417
|
||||
silesia, uncompressed literals optimal, compress cctx, 4265851
|
||||
silesia, huffman literals, compress cctx, 6174127
|
||||
silesia, multithreaded with advanced params, compress cctx, 4838417
|
||||
github, level -5, compress cctx, 204407
|
||||
github, level -5 with dict, compress cctx, 47581
|
||||
github, level -3, compress cctx, 193253
|
||||
@@ -97,57 +97,57 @@ github, uncompressed literals, compress
|
||||
github, uncompressed literals optimal, compress cctx, 132879
|
||||
github, huffman literals, compress cctx, 175468
|
||||
github, multithreaded with advanced params, compress cctx, 141069
|
||||
silesia, level -5, zstdcli, 6857420
|
||||
silesia, level -3, zstdcli, 6503460
|
||||
silesia, level -1, zstdcli, 6172250
|
||||
silesia, level 0, zstdcli, 4839479
|
||||
silesia, level 1, zstdcli, 5306680
|
||||
silesia, level 3, zstdcli, 4839479
|
||||
silesia, level 4, zstdcli, 4776605
|
||||
silesia, level 5, zstdcli, 4667716
|
||||
silesia, level 6, zstdcli, 4604399
|
||||
silesia, level 7, zstdcli, 4570319
|
||||
silesia, level 9, zstdcli, 4545898
|
||||
silesia, level 13, zstdcli, 4494038
|
||||
silesia, level 16, zstdcli, 4359700
|
||||
silesia, level 19, zstdcli, 4266630
|
||||
silesia, long distance mode, zstdcli, 4831224
|
||||
silesia, multithreaded, zstdcli, 4839479
|
||||
silesia, multithreaded long distance mode, zstdcli, 4831224
|
||||
silesia, level -5, zstdcli, 6856073
|
||||
silesia, level -3, zstdcli, 6505580
|
||||
silesia, level -1, zstdcli, 6172649
|
||||
silesia, level 0, zstdcli, 4838997
|
||||
silesia, level 1, zstdcli, 5306179
|
||||
silesia, level 3, zstdcli, 4838997
|
||||
silesia, level 4, zstdcli, 4775769
|
||||
silesia, level 5, zstdcli, 4666931
|
||||
silesia, level 6, zstdcli, 4602509
|
||||
silesia, level 7, zstdcli, 4568265
|
||||
silesia, level 9, zstdcli, 4540123
|
||||
silesia, level 13, zstdcli, 4488478
|
||||
silesia, level 16, zstdcli, 4358150
|
||||
silesia, level 19, zstdcli, 4265929
|
||||
silesia, long distance mode, zstdcli, 4830467
|
||||
silesia, multithreaded, zstdcli, 4838997
|
||||
silesia, multithreaded long distance mode, zstdcli, 4830467
|
||||
silesia, small window log, zstdcli, 7094528
|
||||
silesia, small hash log, zstdcli, 6526189
|
||||
silesia, small chain log, zstdcli, 4912245
|
||||
silesia, explicit params, zstdcli, 4795840
|
||||
silesia, uncompressed literals, zstdcli, 5117005
|
||||
silesia, uncompressed literals optimal, zstdcli, 4316928
|
||||
silesia, huffman literals, zstdcli, 5321417
|
||||
silesia, multithreaded with advanced params, zstdcli, 5117005
|
||||
silesia.tar, level -5, zstdcli, 6862049
|
||||
silesia.tar, level -3, zstdcli, 6506509
|
||||
silesia.tar, level -1, zstdcli, 6179789
|
||||
silesia.tar, level 0, zstdcli, 4851482
|
||||
silesia.tar, level 1, zstdcli, 5329010
|
||||
silesia.tar, level 3, zstdcli, 4851482
|
||||
silesia.tar, level 4, zstdcli, 4789729
|
||||
silesia.tar, level 5, zstdcli, 4679860
|
||||
silesia.tar, level 6, zstdcli, 4615355
|
||||
silesia.tar, level 7, zstdcli, 4581791
|
||||
silesia.tar, level 9, zstdcli, 4555452
|
||||
silesia.tar, level 13, zstdcli, 4502960
|
||||
silesia.tar, level 16, zstdcli, 4360389
|
||||
silesia.tar, level 19, zstdcli, 4260943
|
||||
silesia.tar, no source size, zstdcli, 4851478
|
||||
silesia.tar, long distance mode, zstdcli, 4843159
|
||||
silesia.tar, multithreaded, zstdcli, 4851482
|
||||
silesia.tar, multithreaded long distance mode, zstdcli, 4843159
|
||||
silesia, small hash log, zstdcli, 6527214
|
||||
silesia, small chain log, zstdcli, 4911647
|
||||
silesia, explicit params, zstdcli, 4794378
|
||||
silesia, uncompressed literals, zstdcli, 5117843
|
||||
silesia, uncompressed literals optimal, zstdcli, 4316761
|
||||
silesia, huffman literals, zstdcli, 5320793
|
||||
silesia, multithreaded with advanced params, zstdcli, 5117843
|
||||
silesia.tar, level -5, zstdcli, 6860173
|
||||
silesia.tar, level -3, zstdcli, 6507196
|
||||
silesia.tar, level -1, zstdcli, 6177719
|
||||
silesia.tar, level 0, zstdcli, 4841906
|
||||
silesia.tar, level 1, zstdcli, 5313917
|
||||
silesia.tar, level 3, zstdcli, 4841906
|
||||
silesia.tar, level 4, zstdcli, 4780121
|
||||
silesia.tar, level 5, zstdcli, 4671144
|
||||
silesia.tar, level 6, zstdcli, 4606407
|
||||
silesia.tar, level 7, zstdcli, 4572666
|
||||
silesia.tar, level 9, zstdcli, 4542599
|
||||
silesia.tar, level 13, zstdcli, 4489976
|
||||
silesia.tar, level 16, zstdcli, 4356959
|
||||
silesia.tar, level 19, zstdcli, 4259787
|
||||
silesia.tar, no source size, zstdcli, 4841902
|
||||
silesia.tar, long distance mode, zstdcli, 4834266
|
||||
silesia.tar, multithreaded, zstdcli, 4841906
|
||||
silesia.tar, multithreaded long distance mode, zstdcli, 4834266
|
||||
silesia.tar, small window log, zstdcli, 7100110
|
||||
silesia.tar, small hash log, zstdcli, 6529264
|
||||
silesia.tar, small chain log, zstdcli, 4917022
|
||||
silesia.tar, explicit params, zstdcli, 4821112
|
||||
silesia.tar, uncompressed literals, zstdcli, 5118944
|
||||
silesia.tar, uncompressed literals optimal, zstdcli, 4308455
|
||||
silesia.tar, huffman literals, zstdcli, 5342074
|
||||
silesia.tar, multithreaded with advanced params, zstdcli, 5118944
|
||||
silesia.tar, small hash log, zstdcli, 6530007
|
||||
silesia.tar, small chain log, zstdcli, 4916091
|
||||
silesia.tar, explicit params, zstdcli, 4809323
|
||||
silesia.tar, uncompressed literals, zstdcli, 5116446
|
||||
silesia.tar, uncompressed literals optimal, zstdcli, 4306844
|
||||
silesia.tar, huffman literals, zstdcli, 5326463
|
||||
silesia.tar, multithreaded with advanced params, zstdcli, 5116446
|
||||
github, level -5, zstdcli, 206407
|
||||
github, level -5 with dict, zstdcli, 47832
|
||||
github, level -3, zstdcli, 195253
|
||||
@@ -187,25 +187,25 @@ github, uncompressed literals, zstdcli,
|
||||
github, uncompressed literals optimal, zstdcli, 154667
|
||||
github, huffman literals, zstdcli, 144365
|
||||
github, multithreaded with advanced params, zstdcli, 167909
|
||||
github.tar, level -5, zstdcli, 52119
|
||||
github.tar, level -5 with dict, zstdcli, 51101
|
||||
github.tar, level -3, zstdcli, 45682
|
||||
github.tar, level -3 with dict, zstdcli, 44738
|
||||
github.tar, level -1, zstdcli, 42564
|
||||
github.tar, level -1 with dict, zstdcli, 41357
|
||||
github.tar, level 0, zstdcli, 38888
|
||||
github.tar, level 0 with dict, zstdcli, 37999
|
||||
github.tar, level 1, zstdcli, 39204
|
||||
github.tar, level 1 with dict, zstdcli, 38123
|
||||
github.tar, level 3, zstdcli, 38888
|
||||
github.tar, level 3 with dict, zstdcli, 37999
|
||||
github.tar, level 4, zstdcli, 38884
|
||||
github.tar, level 4 with dict, zstdcli, 37952
|
||||
github.tar, level 5, zstdcli, 39655
|
||||
github.tar, level 5 with dict, zstdcli, 39073
|
||||
github.tar, level 6, zstdcli, 39286
|
||||
github.tar, level 6 with dict, zstdcli, 38647
|
||||
github.tar, level 7, zstdcli, 38009
|
||||
github.tar, level -5, zstdcli, 52308
|
||||
github.tar, level -5 with dict, zstdcli, 51318
|
||||
github.tar, level -3, zstdcli, 45815
|
||||
github.tar, level -3 with dict, zstdcli, 44883
|
||||
github.tar, level -1, zstdcli, 42688
|
||||
github.tar, level -1 with dict, zstdcli, 41510
|
||||
github.tar, level 0, zstdcli, 39071
|
||||
github.tar, level 0 with dict, zstdcli, 38140
|
||||
github.tar, level 1, zstdcli, 39404
|
||||
github.tar, level 1 with dict, zstdcli, 38320
|
||||
github.tar, level 3, zstdcli, 39071
|
||||
github.tar, level 3 with dict, zstdcli, 38140
|
||||
github.tar, level 4, zstdcli, 39067
|
||||
github.tar, level 4 with dict, zstdcli, 38082
|
||||
github.tar, level 5, zstdcli, 39815
|
||||
github.tar, level 5 with dict, zstdcli, 39221
|
||||
github.tar, level 6, zstdcli, 39455
|
||||
github.tar, level 6 with dict, zstdcli, 38787
|
||||
github.tar, level 7, zstdcli, 38177
|
||||
github.tar, level 7 with dict, zstdcli, 37861
|
||||
github.tar, level 9, zstdcli, 36727
|
||||
github.tar, level 9 with dict, zstdcli, 36686
|
||||
@@ -215,87 +215,87 @@ github.tar, level 16, zstdcli,
|
||||
github.tar, level 16 with dict, zstdcli, 33379
|
||||
github.tar, level 19, zstdcli, 32266
|
||||
github.tar, level 19 with dict, zstdcli, 32705
|
||||
github.tar, no source size, zstdcli, 38885
|
||||
github.tar, no source size with dict, zstdcli, 38115
|
||||
github.tar, long distance mode, zstdcli, 40227
|
||||
github.tar, multithreaded, zstdcli, 38888
|
||||
github.tar, multithreaded long distance mode, zstdcli, 40227
|
||||
github.tar, no source size, zstdcli, 39068
|
||||
github.tar, no source size with dict, zstdcli, 38274
|
||||
github.tar, long distance mode, zstdcli, 40381
|
||||
github.tar, multithreaded, zstdcli, 39071
|
||||
github.tar, multithreaded long distance mode, zstdcli, 40381
|
||||
github.tar, small window log, zstdcli, 198539
|
||||
github.tar, small hash log, zstdcli, 129874
|
||||
github.tar, small chain log, zstdcli, 41673
|
||||
github.tar, explicit params, zstdcli, 41385
|
||||
github.tar, uncompressed literals, zstdcli, 41566
|
||||
github.tar, explicit params, zstdcli, 41588
|
||||
github.tar, uncompressed literals, zstdcli, 41704
|
||||
github.tar, uncompressed literals optimal, zstdcli, 35360
|
||||
github.tar, huffman literals, zstdcli, 38857
|
||||
github.tar, multithreaded with advanced params, zstdcli, 41566
|
||||
silesia, level -5, advanced one pass, 6857372
|
||||
silesia, level -3, advanced one pass, 6503412
|
||||
silesia, level -1, advanced one pass, 6172202
|
||||
silesia, level 0, advanced one pass, 4839431
|
||||
silesia, level 1, advanced one pass, 5306632
|
||||
silesia, level 3, advanced one pass, 4839431
|
||||
silesia, level 4, advanced one pass, 4776557
|
||||
silesia, level 5 row 1, advanced one pass, 4667668
|
||||
silesia, level 5 row 2, advanced one pass, 4670326
|
||||
silesia, level 5, advanced one pass, 4667668
|
||||
silesia, level 6, advanced one pass, 4604351
|
||||
silesia, level 7 row 1, advanced one pass, 4570271
|
||||
silesia, level 7 row 2, advanced one pass, 4565169
|
||||
silesia, level 7, advanced one pass, 4570271
|
||||
silesia, level 9, advanced one pass, 4545850
|
||||
silesia, level 11 row 1, advanced one pass, 4505658
|
||||
silesia, level 11 row 2, advanced one pass, 4503429
|
||||
silesia, level 12 row 1, advanced one pass, 4505658
|
||||
silesia, level 12 row 2, advanced one pass, 4503429
|
||||
silesia, level 13, advanced one pass, 4493990
|
||||
silesia, level 16, advanced one pass, 4359652
|
||||
silesia, level 19, advanced one pass, 4266582
|
||||
silesia, no source size, advanced one pass, 4839431
|
||||
silesia, long distance mode, advanced one pass, 4831158
|
||||
silesia, multithreaded, advanced one pass, 4839431
|
||||
silesia, multithreaded long distance mode, advanced one pass, 4831176
|
||||
github.tar, huffman literals, zstdcli, 39046
|
||||
github.tar, multithreaded with advanced params, zstdcli, 41704
|
||||
silesia, level -5, advanced one pass, 6857776
|
||||
silesia, level -3, advanced one pass, 6504756
|
||||
silesia, level -1, advanced one pass, 6174127
|
||||
silesia, level 0, advanced one pass, 4838417
|
||||
silesia, level 1, advanced one pass, 5306931
|
||||
silesia, level 3, advanced one pass, 4838417
|
||||
silesia, level 4, advanced one pass, 4775359
|
||||
silesia, level 5 row 1, advanced one pass, 4666524
|
||||
silesia, level 5 row 2, advanced one pass, 4668976
|
||||
silesia, level 5, advanced one pass, 4666524
|
||||
silesia, level 6, advanced one pass, 4602031
|
||||
silesia, level 7 row 1, advanced one pass, 4567954
|
||||
silesia, level 7 row 2, advanced one pass, 4562774
|
||||
silesia, level 7, advanced one pass, 4567954
|
||||
silesia, level 9, advanced one pass, 4540520
|
||||
silesia, level 11 row 1, advanced one pass, 4500472
|
||||
silesia, level 11 row 2, advanced one pass, 4498174
|
||||
silesia, level 12 row 1, advanced one pass, 4500472
|
||||
silesia, level 12 row 2, advanced one pass, 4498174
|
||||
silesia, level 13, advanced one pass, 4488969
|
||||
silesia, level 16, advanced one pass, 4356799
|
||||
silesia, level 19, advanced one pass, 4265851
|
||||
silesia, no source size, advanced one pass, 4838417
|
||||
silesia, long distance mode, advanced one pass, 4830097
|
||||
silesia, multithreaded, advanced one pass, 4838949
|
||||
silesia, multithreaded long distance mode, advanced one pass, 4830419
|
||||
silesia, small window log, advanced one pass, 7094480
|
||||
silesia, small hash log, advanced one pass, 6526141
|
||||
silesia, small chain log, advanced one pass, 4912197
|
||||
silesia, explicit params, advanced one pass, 4795840
|
||||
silesia, uncompressed literals, advanced one pass, 5116957
|
||||
silesia, uncompressed literals optimal, advanced one pass, 4316880
|
||||
silesia, huffman literals, advanced one pass, 5321369
|
||||
silesia, multithreaded with advanced params, advanced one pass, 5116957
|
||||
silesia.tar, level -5, advanced one pass, 6861055
|
||||
silesia.tar, level -3, advanced one pass, 6505483
|
||||
silesia.tar, level -1, advanced one pass, 6179047
|
||||
silesia.tar, level 0, advanced one pass, 4851407
|
||||
silesia.tar, level 1, advanced one pass, 5327717
|
||||
silesia.tar, level 3, advanced one pass, 4851407
|
||||
silesia.tar, level 4, advanced one pass, 4788821
|
||||
silesia.tar, level 5 row 1, advanced one pass, 4679004
|
||||
silesia.tar, level 5 row 2, advanced one pass, 4682334
|
||||
silesia.tar, level 5, advanced one pass, 4679004
|
||||
silesia.tar, level 6, advanced one pass, 4614561
|
||||
silesia.tar, level 7 row 1, advanced one pass, 4579828
|
||||
silesia.tar, level 7 row 2, advanced one pass, 4575602
|
||||
silesia.tar, level 7, advanced one pass, 4579828
|
||||
silesia.tar, level 9, advanced one pass, 4555448
|
||||
silesia.tar, level 11 row 1, advanced one pass, 4514962
|
||||
silesia.tar, level 11 row 2, advanced one pass, 4513816
|
||||
silesia.tar, level 12 row 1, advanced one pass, 4514517
|
||||
silesia.tar, level 12 row 2, advanced one pass, 4514007
|
||||
silesia.tar, level 13, advanced one pass, 4502956
|
||||
silesia.tar, level 16, advanced one pass, 4360385
|
||||
silesia.tar, level 19, advanced one pass, 4260939
|
||||
silesia.tar, no source size, advanced one pass, 4851407
|
||||
silesia.tar, long distance mode, advanced one pass, 4837775
|
||||
silesia.tar, multithreaded, advanced one pass, 4851478
|
||||
silesia.tar, multithreaded long distance mode, advanced one pass, 4843155
|
||||
silesia, small hash log, advanced one pass, 6525510
|
||||
silesia, small chain log, advanced one pass, 4912248
|
||||
silesia, explicit params, advanced one pass, 4794219
|
||||
silesia, uncompressed literals, advanced one pass, 5117482
|
||||
silesia, uncompressed literals optimal, advanced one pass, 4316644
|
||||
silesia, huffman literals, advanced one pass, 5321686
|
||||
silesia, multithreaded with advanced params, advanced one pass, 5117795
|
||||
silesia.tar, level -5, advanced one pass, 6860782
|
||||
silesia.tar, level -3, advanced one pass, 6507448
|
||||
silesia.tar, level -1, advanced one pass, 6175582
|
||||
silesia.tar, level 0, advanced one pass, 4843429
|
||||
silesia.tar, level 1, advanced one pass, 5316794
|
||||
silesia.tar, level 3, advanced one pass, 4843429
|
||||
silesia.tar, level 4, advanced one pass, 4780657
|
||||
silesia.tar, level 5 row 1, advanced one pass, 4669650
|
||||
silesia.tar, level 5 row 2, advanced one pass, 4673119
|
||||
silesia.tar, level 5, advanced one pass, 4669650
|
||||
silesia.tar, level 6, advanced one pass, 4604925
|
||||
silesia.tar, level 7 row 1, advanced one pass, 4570873
|
||||
silesia.tar, level 7 row 2, advanced one pass, 4566314
|
||||
silesia.tar, level 7, advanced one pass, 4570873
|
||||
silesia.tar, level 9, advanced one pass, 4537558
|
||||
silesia.tar, level 11 row 1, advanced one pass, 4496590
|
||||
silesia.tar, level 11 row 2, advanced one pass, 4495225
|
||||
silesia.tar, level 12 row 1, advanced one pass, 4496084
|
||||
silesia.tar, level 12 row 2, advanced one pass, 4495434
|
||||
silesia.tar, level 13, advanced one pass, 4484732
|
||||
silesia.tar, level 16, advanced one pass, 4355572
|
||||
silesia.tar, level 19, advanced one pass, 4257629
|
||||
silesia.tar, no source size, advanced one pass, 4843429
|
||||
silesia.tar, long distance mode, advanced one pass, 4830453
|
||||
silesia.tar, multithreaded, advanced one pass, 4841902
|
||||
silesia.tar, multithreaded long distance mode, advanced one pass, 4834262
|
||||
silesia.tar, small window log, advanced one pass, 7100064
|
||||
silesia.tar, small hash log, advanced one pass, 6529206
|
||||
silesia.tar, small chain log, advanced one pass, 4917041
|
||||
silesia.tar, explicit params, advanced one pass, 4807274
|
||||
silesia.tar, uncompressed literals, advanced one pass, 5118848
|
||||
silesia.tar, uncompressed literals optimal, advanced one pass, 4308451
|
||||
silesia.tar, huffman literals, advanced one pass, 5341705
|
||||
silesia.tar, multithreaded with advanced params, advanced one pass, 5118940
|
||||
silesia.tar, small hash log, advanced one pass, 6530222
|
||||
silesia.tar, small chain log, advanced one pass, 4915689
|
||||
silesia.tar, explicit params, advanced one pass, 4797958
|
||||
silesia.tar, uncompressed literals, advanced one pass, 5116329
|
||||
silesia.tar, uncompressed literals optimal, advanced one pass, 4306289
|
||||
silesia.tar, huffman literals, advanced one pass, 5331382
|
||||
silesia.tar, multithreaded with advanced params, advanced one pass, 5116442
|
||||
github, level -5, advanced one pass, 204407
|
||||
github, level -5 with dict, advanced one pass, 45832
|
||||
github, level -3, advanced one pass, 193253
|
||||
@@ -421,74 +421,74 @@ github, uncompressed literals, advanced
|
||||
github, uncompressed literals optimal, advanced one pass, 152667
|
||||
github, huffman literals, advanced one pass, 142365
|
||||
github, multithreaded with advanced params, advanced one pass, 165909
|
||||
github.tar, level -5, advanced one pass, 52115
|
||||
github.tar, level -5 with dict, advanced one pass, 51097
|
||||
github.tar, level -3, advanced one pass, 45678
|
||||
github.tar, level -3 with dict, advanced one pass, 44734
|
||||
github.tar, level -1, advanced one pass, 42560
|
||||
github.tar, level -1 with dict, advanced one pass, 41353
|
||||
github.tar, level 0, advanced one pass, 38884
|
||||
github.tar, level 0 with dict, advanced one pass, 37995
|
||||
github.tar, level 0 with dict dms, advanced one pass, 38114
|
||||
github.tar, level 0 with dict dds, advanced one pass, 38114
|
||||
github.tar, level 0 with dict copy, advanced one pass, 37995
|
||||
github.tar, level 0 with dict load, advanced one pass, 37956
|
||||
github.tar, level 1, advanced one pass, 39200
|
||||
github.tar, level 1 with dict, advanced one pass, 38119
|
||||
github.tar, level 1 with dict dms, advanced one pass, 38406
|
||||
github.tar, level 1 with dict dds, advanced one pass, 38406
|
||||
github.tar, level 1 with dict copy, advanced one pass, 38119
|
||||
github.tar, level 1 with dict load, advanced one pass, 38364
|
||||
github.tar, level 3, advanced one pass, 38884
|
||||
github.tar, level 3 with dict, advanced one pass, 37995
|
||||
github.tar, level 3 with dict dms, advanced one pass, 38114
|
||||
github.tar, level 3 with dict dds, advanced one pass, 38114
|
||||
github.tar, level 3 with dict copy, advanced one pass, 37995
|
||||
github.tar, level 3 with dict load, advanced one pass, 37956
|
||||
github.tar, level 4, advanced one pass, 38880
|
||||
github.tar, level 4 with dict, advanced one pass, 37948
|
||||
github.tar, level 4 with dict dms, advanced one pass, 37995
|
||||
github.tar, level 4 with dict dds, advanced one pass, 37995
|
||||
github.tar, level 4 with dict copy, advanced one pass, 37948
|
||||
github.tar, level 4 with dict load, advanced one pass, 37927
|
||||
github.tar, level 5 row 1, advanced one pass, 39651
|
||||
github.tar, level 5 row 1 with dict dms, advanced one pass, 39043
|
||||
github.tar, level 5 row 1 with dict dds, advanced one pass, 39069
|
||||
github.tar, level 5 row 1 with dict copy, advanced one pass, 39145
|
||||
github.tar, level 5 row 1 with dict load, advanced one pass, 39000
|
||||
github.tar, level 5 row 2, advanced one pass, 39701
|
||||
github.tar, level 5 row 2 with dict dms, advanced one pass, 39365
|
||||
github.tar, level 5 row 2 with dict dds, advanced one pass, 39233
|
||||
github.tar, level 5 row 2 with dict copy, advanced one pass, 39715
|
||||
github.tar, level 5 row 2 with dict load, advanced one pass, 39158
|
||||
github.tar, level 5, advanced one pass, 39651
|
||||
github.tar, level 5 with dict, advanced one pass, 39145
|
||||
github.tar, level 5 with dict dms, advanced one pass, 39043
|
||||
github.tar, level 5 with dict dds, advanced one pass, 39069
|
||||
github.tar, level 5 with dict copy, advanced one pass, 39145
|
||||
github.tar, level 5 with dict load, advanced one pass, 39000
|
||||
github.tar, level 6, advanced one pass, 39282
|
||||
github.tar, level 6 with dict, advanced one pass, 38656
|
||||
github.tar, level 6 with dict dms, advanced one pass, 38640
|
||||
github.tar, level 6 with dict dds, advanced one pass, 38643
|
||||
github.tar, level 6 with dict copy, advanced one pass, 38656
|
||||
github.tar, level 6 with dict load, advanced one pass, 38647
|
||||
github.tar, level 7 row 1, advanced one pass, 38005
|
||||
github.tar, level -5, advanced one pass, 52320
|
||||
github.tar, level -5 with dict, advanced one pass, 51321
|
||||
github.tar, level -3, advanced one pass, 45823
|
||||
github.tar, level -3 with dict, advanced one pass, 44882
|
||||
github.tar, level -1, advanced one pass, 42740
|
||||
github.tar, level -1 with dict, advanced one pass, 41506
|
||||
github.tar, level 0, advanced one pass, 39073
|
||||
github.tar, level 0 with dict, advanced one pass, 38146
|
||||
github.tar, level 0 with dict dms, advanced one pass, 38262
|
||||
github.tar, level 0 with dict dds, advanced one pass, 38262
|
||||
github.tar, level 0 with dict copy, advanced one pass, 38146
|
||||
github.tar, level 0 with dict load, advanced one pass, 38107
|
||||
github.tar, level 1, advanced one pass, 39444
|
||||
github.tar, level 1 with dict, advanced one pass, 38338
|
||||
github.tar, level 1 with dict dms, advanced one pass, 38641
|
||||
github.tar, level 1 with dict dds, advanced one pass, 38641
|
||||
github.tar, level 1 with dict copy, advanced one pass, 38338
|
||||
github.tar, level 1 with dict load, advanced one pass, 38592
|
||||
github.tar, level 3, advanced one pass, 39073
|
||||
github.tar, level 3 with dict, advanced one pass, 38146
|
||||
github.tar, level 3 with dict dms, advanced one pass, 38262
|
||||
github.tar, level 3 with dict dds, advanced one pass, 38262
|
||||
github.tar, level 3 with dict copy, advanced one pass, 38146
|
||||
github.tar, level 3 with dict load, advanced one pass, 38107
|
||||
github.tar, level 4, advanced one pass, 39068
|
||||
github.tar, level 4 with dict, advanced one pass, 38081
|
||||
github.tar, level 4 with dict dms, advanced one pass, 38135
|
||||
github.tar, level 4 with dict dds, advanced one pass, 38135
|
||||
github.tar, level 4 with dict copy, advanced one pass, 38081
|
||||
github.tar, level 4 with dict load, advanced one pass, 38088
|
||||
github.tar, level 5 row 1, advanced one pass, 39808
|
||||
github.tar, level 5 row 1 with dict dms, advanced one pass, 39185
|
||||
github.tar, level 5 row 1 with dict dds, advanced one pass, 39213
|
||||
github.tar, level 5 row 1 with dict copy, advanced one pass, 39284
|
||||
github.tar, level 5 row 1 with dict load, advanced one pass, 39155
|
||||
github.tar, level 5 row 2, advanced one pass, 39851
|
||||
github.tar, level 5 row 2 with dict dms, advanced one pass, 39498
|
||||
github.tar, level 5 row 2 with dict dds, advanced one pass, 39364
|
||||
github.tar, level 5 row 2 with dict copy, advanced one pass, 39843
|
||||
github.tar, level 5 row 2 with dict load, advanced one pass, 39312
|
||||
github.tar, level 5, advanced one pass, 39808
|
||||
github.tar, level 5 with dict, advanced one pass, 39284
|
||||
github.tar, level 5 with dict dms, advanced one pass, 39185
|
||||
github.tar, level 5 with dict dds, advanced one pass, 39213
|
||||
github.tar, level 5 with dict copy, advanced one pass, 39284
|
||||
github.tar, level 5 with dict load, advanced one pass, 39155
|
||||
github.tar, level 6, advanced one pass, 39455
|
||||
github.tar, level 6 with dict, advanced one pass, 38808
|
||||
github.tar, level 6 with dict dms, advanced one pass, 38792
|
||||
github.tar, level 6 with dict dds, advanced one pass, 38790
|
||||
github.tar, level 6 with dict copy, advanced one pass, 38808
|
||||
github.tar, level 6 with dict load, advanced one pass, 38796
|
||||
github.tar, level 7 row 1, advanced one pass, 38168
|
||||
github.tar, level 7 row 1 with dict dms, advanced one pass, 37832
|
||||
github.tar, level 7 row 1 with dict dds, advanced one pass, 37857
|
||||
github.tar, level 7 row 1 with dict copy, advanced one pass, 37839
|
||||
github.tar, level 7 row 1 with dict load, advanced one pass, 37286
|
||||
github.tar, level 7 row 2, advanced one pass, 38077
|
||||
github.tar, level 7 row 1 with dict load, advanced one pass, 37445
|
||||
github.tar, level 7 row 2, advanced one pass, 38235
|
||||
github.tar, level 7 row 2 with dict dms, advanced one pass, 38012
|
||||
github.tar, level 7 row 2 with dict dds, advanced one pass, 38014
|
||||
github.tar, level 7 row 2 with dict copy, advanced one pass, 38101
|
||||
github.tar, level 7 row 2 with dict load, advanced one pass, 37402
|
||||
github.tar, level 7, advanced one pass, 38005
|
||||
github.tar, level 7 row 2 with dict load, advanced one pass, 37552
|
||||
github.tar, level 7, advanced one pass, 38168
|
||||
github.tar, level 7 with dict, advanced one pass, 37839
|
||||
github.tar, level 7 with dict dms, advanced one pass, 37832
|
||||
github.tar, level 7 with dict dds, advanced one pass, 37857
|
||||
github.tar, level 7 with dict copy, advanced one pass, 37839
|
||||
github.tar, level 7 with dict load, advanced one pass, 37286
|
||||
github.tar, level 7 with dict load, advanced one pass, 37445
|
||||
github.tar, level 9, advanced one pass, 36723
|
||||
github.tar, level 9 with dict, advanced one pass, 36531
|
||||
github.tar, level 9 with dict dms, advanced one pass, 36615
|
||||
@@ -533,87 +533,87 @@ github.tar, level 19 with dict dms, advanced
|
||||
github.tar, level 19 with dict dds, advanced one pass, 32565
|
||||
github.tar, level 19 with dict copy, advanced one pass, 32701
|
||||
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 with dict, advanced one pass, 37995
|
||||
github.tar, long distance mode, advanced one pass, 40242
|
||||
github.tar, multithreaded, advanced one pass, 38884
|
||||
github.tar, multithreaded long distance mode, advanced one pass, 40223
|
||||
github.tar, no source size, advanced one pass, 39073
|
||||
github.tar, no source size with dict, advanced one pass, 38146
|
||||
github.tar, long distance mode, advanced one pass, 40402
|
||||
github.tar, multithreaded, advanced one pass, 39067
|
||||
github.tar, multithreaded long distance mode, advanced one pass, 40377
|
||||
github.tar, small window log, advanced one pass, 198535
|
||||
github.tar, small hash log, advanced one pass, 129870
|
||||
github.tar, small chain log, advanced one pass, 41669
|
||||
github.tar, explicit params, advanced one pass, 41385
|
||||
github.tar, uncompressed literals, advanced one pass, 41562
|
||||
github.tar, explicit params, advanced one pass, 41605
|
||||
github.tar, uncompressed literals, advanced one pass, 41709
|
||||
github.tar, uncompressed literals optimal, advanced one pass, 35356
|
||||
github.tar, huffman literals, advanced one pass, 38853
|
||||
github.tar, multithreaded with advanced params, advanced one pass, 41562
|
||||
silesia, level -5, advanced one pass small out, 6857372
|
||||
silesia, level -3, advanced one pass small out, 6503412
|
||||
silesia, level -1, advanced one pass small out, 6172202
|
||||
silesia, level 0, advanced one pass small out, 4839431
|
||||
silesia, level 1, advanced one pass small out, 5306632
|
||||
silesia, level 3, advanced one pass small out, 4839431
|
||||
silesia, level 4, advanced one pass small out, 4776557
|
||||
silesia, level 5 row 1, advanced one pass small out, 4667668
|
||||
silesia, level 5 row 2, advanced one pass small out, 4670326
|
||||
silesia, level 5, advanced one pass small out, 4667668
|
||||
silesia, level 6, advanced one pass small out, 4604351
|
||||
silesia, level 7 row 1, advanced one pass small out, 4570271
|
||||
silesia, level 7 row 2, advanced one pass small out, 4565169
|
||||
silesia, level 7, advanced one pass small out, 4570271
|
||||
silesia, level 9, advanced one pass small out, 4545850
|
||||
silesia, level 11 row 1, advanced one pass small out, 4505658
|
||||
silesia, level 11 row 2, advanced one pass small out, 4503429
|
||||
silesia, level 12 row 1, advanced one pass small out, 4505658
|
||||
silesia, level 12 row 2, advanced one pass small out, 4503429
|
||||
silesia, level 13, advanced one pass small out, 4493990
|
||||
silesia, level 16, advanced one pass small out, 4359652
|
||||
silesia, level 19, advanced one pass small out, 4266582
|
||||
silesia, no source size, advanced one pass small out, 4839431
|
||||
silesia, long distance mode, advanced one pass small out, 4831158
|
||||
silesia, multithreaded, advanced one pass small out, 4839431
|
||||
silesia, multithreaded long distance mode, advanced one pass small out, 4831176
|
||||
github.tar, huffman literals, advanced one pass, 39099
|
||||
github.tar, multithreaded with advanced params, advanced one pass, 41700
|
||||
silesia, level -5, advanced one pass small out, 6857776
|
||||
silesia, level -3, advanced one pass small out, 6504756
|
||||
silesia, level -1, advanced one pass small out, 6174127
|
||||
silesia, level 0, advanced one pass small out, 4838417
|
||||
silesia, level 1, advanced one pass small out, 5306931
|
||||
silesia, level 3, advanced one pass small out, 4838417
|
||||
silesia, level 4, advanced one pass small out, 4775359
|
||||
silesia, level 5 row 1, advanced one pass small out, 4666524
|
||||
silesia, level 5 row 2, advanced one pass small out, 4668976
|
||||
silesia, level 5, advanced one pass small out, 4666524
|
||||
silesia, level 6, advanced one pass small out, 4602031
|
||||
silesia, level 7 row 1, advanced one pass small out, 4567954
|
||||
silesia, level 7 row 2, advanced one pass small out, 4562774
|
||||
silesia, level 7, advanced one pass small out, 4567954
|
||||
silesia, level 9, advanced one pass small out, 4540520
|
||||
silesia, level 11 row 1, advanced one pass small out, 4500472
|
||||
silesia, level 11 row 2, advanced one pass small out, 4498174
|
||||
silesia, level 12 row 1, advanced one pass small out, 4500472
|
||||
silesia, level 12 row 2, advanced one pass small out, 4498174
|
||||
silesia, level 13, advanced one pass small out, 4488969
|
||||
silesia, level 16, advanced one pass small out, 4356799
|
||||
silesia, level 19, advanced one pass small out, 4265851
|
||||
silesia, no source size, advanced one pass small out, 4838417
|
||||
silesia, long distance mode, advanced one pass small out, 4830097
|
||||
silesia, multithreaded, advanced one pass small out, 4838949
|
||||
silesia, multithreaded long distance mode, advanced one pass small out, 4830419
|
||||
silesia, small window log, advanced one pass small out, 7094480
|
||||
silesia, small hash log, advanced one pass small out, 6526141
|
||||
silesia, small chain log, advanced one pass small out, 4912197
|
||||
silesia, explicit params, advanced one pass small out, 4795840
|
||||
silesia, uncompressed literals, advanced one pass small out, 5116957
|
||||
silesia, uncompressed literals optimal, advanced one pass small out, 4316880
|
||||
silesia, huffman literals, advanced one pass small out, 5321369
|
||||
silesia, multithreaded with advanced params, advanced one pass small out, 5116957
|
||||
silesia.tar, level -5, advanced one pass small out, 6861055
|
||||
silesia.tar, level -3, advanced one pass small out, 6505483
|
||||
silesia.tar, level -1, advanced one pass small out, 6179047
|
||||
silesia.tar, level 0, advanced one pass small out, 4851407
|
||||
silesia.tar, level 1, advanced one pass small out, 5327717
|
||||
silesia.tar, level 3, advanced one pass small out, 4851407
|
||||
silesia.tar, level 4, advanced one pass small out, 4788821
|
||||
silesia.tar, level 5 row 1, advanced one pass small out, 4679004
|
||||
silesia.tar, level 5 row 2, advanced one pass small out, 4682334
|
||||
silesia.tar, level 5, advanced one pass small out, 4679004
|
||||
silesia.tar, level 6, advanced one pass small out, 4614561
|
||||
silesia.tar, level 7 row 1, advanced one pass small out, 4579828
|
||||
silesia.tar, level 7 row 2, advanced one pass small out, 4575602
|
||||
silesia.tar, level 7, advanced one pass small out, 4579828
|
||||
silesia.tar, level 9, advanced one pass small out, 4555448
|
||||
silesia.tar, level 11 row 1, advanced one pass small out, 4514962
|
||||
silesia.tar, level 11 row 2, advanced one pass small out, 4513816
|
||||
silesia.tar, level 12 row 1, advanced one pass small out, 4514517
|
||||
silesia.tar, level 12 row 2, advanced one pass small out, 4514007
|
||||
silesia.tar, level 13, advanced one pass small out, 4502956
|
||||
silesia.tar, level 16, advanced one pass small out, 4360385
|
||||
silesia.tar, level 19, advanced one pass small out, 4260939
|
||||
silesia.tar, no source size, advanced one pass small out, 4851407
|
||||
silesia.tar, long distance mode, advanced one pass small out, 4837775
|
||||
silesia.tar, multithreaded, advanced one pass small out, 4851478
|
||||
silesia.tar, multithreaded long distance mode, advanced one pass small out, 4843155
|
||||
silesia, small hash log, advanced one pass small out, 6525510
|
||||
silesia, small chain log, advanced one pass small out, 4912248
|
||||
silesia, explicit params, advanced one pass small out, 4794219
|
||||
silesia, uncompressed literals, advanced one pass small out, 5117482
|
||||
silesia, uncompressed literals optimal, advanced one pass small out, 4316644
|
||||
silesia, huffman literals, advanced one pass small out, 5321686
|
||||
silesia, multithreaded with advanced params, advanced one pass small out, 5117795
|
||||
silesia.tar, level -5, advanced one pass small out, 6860782
|
||||
silesia.tar, level -3, advanced one pass small out, 6507448
|
||||
silesia.tar, level -1, advanced one pass small out, 6175582
|
||||
silesia.tar, level 0, advanced one pass small out, 4843429
|
||||
silesia.tar, level 1, advanced one pass small out, 5316794
|
||||
silesia.tar, level 3, advanced one pass small out, 4843429
|
||||
silesia.tar, level 4, advanced one pass small out, 4780657
|
||||
silesia.tar, level 5 row 1, advanced one pass small out, 4669650
|
||||
silesia.tar, level 5 row 2, advanced one pass small out, 4673119
|
||||
silesia.tar, level 5, advanced one pass small out, 4669650
|
||||
silesia.tar, level 6, advanced one pass small out, 4604925
|
||||
silesia.tar, level 7 row 1, advanced one pass small out, 4570873
|
||||
silesia.tar, level 7 row 2, advanced one pass small out, 4566314
|
||||
silesia.tar, level 7, advanced one pass small out, 4570873
|
||||
silesia.tar, level 9, advanced one pass small out, 4537558
|
||||
silesia.tar, level 11 row 1, advanced one pass small out, 4496590
|
||||
silesia.tar, level 11 row 2, advanced one pass small out, 4495225
|
||||
silesia.tar, level 12 row 1, advanced one pass small out, 4496084
|
||||
silesia.tar, level 12 row 2, advanced one pass small out, 4495434
|
||||
silesia.tar, level 13, advanced one pass small out, 4484732
|
||||
silesia.tar, level 16, advanced one pass small out, 4355572
|
||||
silesia.tar, level 19, advanced one pass small out, 4257629
|
||||
silesia.tar, no source size, advanced one pass small out, 4843429
|
||||
silesia.tar, long distance mode, advanced one pass small out, 4830453
|
||||
silesia.tar, multithreaded, advanced one pass small out, 4841902
|
||||
silesia.tar, multithreaded long distance mode, advanced one pass small out, 4834262
|
||||
silesia.tar, small window log, advanced one pass small out, 7100064
|
||||
silesia.tar, small hash log, advanced one pass small out, 6529206
|
||||
silesia.tar, small chain log, advanced one pass small out, 4917041
|
||||
silesia.tar, explicit params, advanced one pass small out, 4807274
|
||||
silesia.tar, uncompressed literals, advanced one pass small out, 5118848
|
||||
silesia.tar, uncompressed literals optimal, advanced one pass small out, 4308451
|
||||
silesia.tar, huffman literals, advanced one pass small out, 5341705
|
||||
silesia.tar, multithreaded with advanced params, advanced one pass small out, 5118940
|
||||
silesia.tar, small hash log, advanced one pass small out, 6530222
|
||||
silesia.tar, small chain log, advanced one pass small out, 4915689
|
||||
silesia.tar, explicit params, advanced one pass small out, 4797958
|
||||
silesia.tar, uncompressed literals, advanced one pass small out, 5116329
|
||||
silesia.tar, uncompressed literals optimal, advanced one pass small out, 4306289
|
||||
silesia.tar, huffman literals, advanced one pass small out, 5331382
|
||||
silesia.tar, multithreaded with advanced params, advanced one pass small out, 5116442
|
||||
github, level -5, advanced one pass small out, 204407
|
||||
github, level -5 with dict, advanced one pass small out, 45832
|
||||
github, level -3, advanced one pass small out, 193253
|
||||
@@ -739,74 +739,74 @@ github, uncompressed literals, advanced
|
||||
github, uncompressed literals optimal, advanced one pass small out, 152667
|
||||
github, huffman literals, advanced one pass small out, 142365
|
||||
github, multithreaded with advanced params, advanced one pass small out, 165909
|
||||
github.tar, level -5, advanced one pass small out, 52115
|
||||
github.tar, level -5 with dict, advanced one pass small out, 51097
|
||||
github.tar, level -3, advanced one pass small out, 45678
|
||||
github.tar, level -3 with dict, advanced one pass small out, 44734
|
||||
github.tar, level -1, advanced one pass small out, 42560
|
||||
github.tar, level -1 with dict, advanced one pass small out, 41353
|
||||
github.tar, level 0, advanced one pass small out, 38884
|
||||
github.tar, level 0 with dict, advanced one pass small out, 37995
|
||||
github.tar, level 0 with dict dms, advanced one pass small out, 38114
|
||||
github.tar, level 0 with dict dds, advanced one pass small out, 38114
|
||||
github.tar, level 0 with dict copy, advanced one pass small out, 37995
|
||||
github.tar, level 0 with dict load, advanced one pass small out, 37956
|
||||
github.tar, level 1, advanced one pass small out, 39200
|
||||
github.tar, level 1 with dict, advanced one pass small out, 38119
|
||||
github.tar, level 1 with dict dms, advanced one pass small out, 38406
|
||||
github.tar, level 1 with dict dds, advanced one pass small out, 38406
|
||||
github.tar, level 1 with dict copy, advanced one pass small out, 38119
|
||||
github.tar, level 1 with dict load, advanced one pass small out, 38364
|
||||
github.tar, level 3, advanced one pass small out, 38884
|
||||
github.tar, level 3 with dict, advanced one pass small out, 37995
|
||||
github.tar, level 3 with dict dms, advanced one pass small out, 38114
|
||||
github.tar, level 3 with dict dds, advanced one pass small out, 38114
|
||||
github.tar, level 3 with dict copy, advanced one pass small out, 37995
|
||||
github.tar, level 3 with dict load, advanced one pass small out, 37956
|
||||
github.tar, level 4, advanced one pass small out, 38880
|
||||
github.tar, level 4 with dict, advanced one pass small out, 37948
|
||||
github.tar, level 4 with dict dms, advanced one pass small out, 37995
|
||||
github.tar, level 4 with dict dds, advanced one pass small out, 37995
|
||||
github.tar, level 4 with dict copy, advanced one pass small out, 37948
|
||||
github.tar, level 4 with dict load, advanced one pass small out, 37927
|
||||
github.tar, level 5 row 1, advanced one pass small out, 39651
|
||||
github.tar, level 5 row 1 with dict dms, advanced one pass small out, 39043
|
||||
github.tar, level 5 row 1 with dict dds, advanced one pass small out, 39069
|
||||
github.tar, level 5 row 1 with dict copy, advanced one pass small out, 39145
|
||||
github.tar, level 5 row 1 with dict load, advanced one pass small out, 39000
|
||||
github.tar, level 5 row 2, advanced one pass small out, 39701
|
||||
github.tar, level 5 row 2 with dict dms, advanced one pass small out, 39365
|
||||
github.tar, level 5 row 2 with dict dds, advanced one pass small out, 39233
|
||||
github.tar, level 5 row 2 with dict copy, advanced one pass small out, 39715
|
||||
github.tar, level 5 row 2 with dict load, advanced one pass small out, 39158
|
||||
github.tar, level 5, advanced one pass small out, 39651
|
||||
github.tar, level 5 with dict, advanced one pass small out, 39145
|
||||
github.tar, level 5 with dict dms, advanced one pass small out, 39043
|
||||
github.tar, level 5 with dict dds, advanced one pass small out, 39069
|
||||
github.tar, level 5 with dict copy, advanced one pass small out, 39145
|
||||
github.tar, level 5 with dict load, advanced one pass small out, 39000
|
||||
github.tar, level 6, advanced one pass small out, 39282
|
||||
github.tar, level 6 with dict, advanced one pass small out, 38656
|
||||
github.tar, level 6 with dict dms, advanced one pass small out, 38640
|
||||
github.tar, level 6 with dict dds, advanced one pass small out, 38643
|
||||
github.tar, level 6 with dict copy, advanced one pass small out, 38656
|
||||
github.tar, level 6 with dict load, advanced one pass small out, 38647
|
||||
github.tar, level 7 row 1, advanced one pass small out, 38005
|
||||
github.tar, level -5, advanced one pass small out, 52320
|
||||
github.tar, level -5 with dict, advanced one pass small out, 51321
|
||||
github.tar, level -3, advanced one pass small out, 45823
|
||||
github.tar, level -3 with dict, advanced one pass small out, 44882
|
||||
github.tar, level -1, advanced one pass small out, 42740
|
||||
github.tar, level -1 with dict, advanced one pass small out, 41506
|
||||
github.tar, level 0, advanced one pass small out, 39073
|
||||
github.tar, level 0 with dict, advanced one pass small out, 38146
|
||||
github.tar, level 0 with dict dms, advanced one pass small out, 38262
|
||||
github.tar, level 0 with dict dds, advanced one pass small out, 38262
|
||||
github.tar, level 0 with dict copy, advanced one pass small out, 38146
|
||||
github.tar, level 0 with dict load, advanced one pass small out, 38107
|
||||
github.tar, level 1, advanced one pass small out, 39444
|
||||
github.tar, level 1 with dict, advanced one pass small out, 38338
|
||||
github.tar, level 1 with dict dms, advanced one pass small out, 38641
|
||||
github.tar, level 1 with dict dds, advanced one pass small out, 38641
|
||||
github.tar, level 1 with dict copy, advanced one pass small out, 38338
|
||||
github.tar, level 1 with dict load, advanced one pass small out, 38592
|
||||
github.tar, level 3, advanced one pass small out, 39073
|
||||
github.tar, level 3 with dict, advanced one pass small out, 38146
|
||||
github.tar, level 3 with dict dms, advanced one pass small out, 38262
|
||||
github.tar, level 3 with dict dds, advanced one pass small out, 38262
|
||||
github.tar, level 3 with dict copy, advanced one pass small out, 38146
|
||||
github.tar, level 3 with dict load, advanced one pass small out, 38107
|
||||
github.tar, level 4, advanced one pass small out, 39068
|
||||
github.tar, level 4 with dict, advanced one pass small out, 38081
|
||||
github.tar, level 4 with dict dms, advanced one pass small out, 38135
|
||||
github.tar, level 4 with dict dds, advanced one pass small out, 38135
|
||||
github.tar, level 4 with dict copy, advanced one pass small out, 38081
|
||||
github.tar, level 4 with dict load, advanced one pass small out, 38088
|
||||
github.tar, level 5 row 1, advanced one pass small out, 39808
|
||||
github.tar, level 5 row 1 with dict dms, advanced one pass small out, 39185
|
||||
github.tar, level 5 row 1 with dict dds, advanced one pass small out, 39213
|
||||
github.tar, level 5 row 1 with dict copy, advanced one pass small out, 39284
|
||||
github.tar, level 5 row 1 with dict load, advanced one pass small out, 39155
|
||||
github.tar, level 5 row 2, advanced one pass small out, 39851
|
||||
github.tar, level 5 row 2 with dict dms, advanced one pass small out, 39498
|
||||
github.tar, level 5 row 2 with dict dds, advanced one pass small out, 39364
|
||||
github.tar, level 5 row 2 with dict copy, advanced one pass small out, 39843
|
||||
github.tar, level 5 row 2 with dict load, advanced one pass small out, 39312
|
||||
github.tar, level 5, advanced one pass small out, 39808
|
||||
github.tar, level 5 with dict, advanced one pass small out, 39284
|
||||
github.tar, level 5 with dict dms, advanced one pass small out, 39185
|
||||
github.tar, level 5 with dict dds, advanced one pass small out, 39213
|
||||
github.tar, level 5 with dict copy, advanced one pass small out, 39284
|
||||
github.tar, level 5 with dict load, advanced one pass small out, 39155
|
||||
github.tar, level 6, advanced one pass small out, 39455
|
||||
github.tar, level 6 with dict, advanced one pass small out, 38808
|
||||
github.tar, level 6 with dict dms, advanced one pass small out, 38792
|
||||
github.tar, level 6 with dict dds, advanced one pass small out, 38790
|
||||
github.tar, level 6 with dict copy, advanced one pass small out, 38808
|
||||
github.tar, level 6 with dict load, advanced one pass small out, 38796
|
||||
github.tar, level 7 row 1, advanced one pass small out, 38168
|
||||
github.tar, level 7 row 1 with dict dms, advanced one pass small out, 37832
|
||||
github.tar, level 7 row 1 with dict dds, advanced one pass small out, 37857
|
||||
github.tar, level 7 row 1 with dict copy, advanced one pass small out, 37839
|
||||
github.tar, level 7 row 1 with dict load, advanced one pass small out, 37286
|
||||
github.tar, level 7 row 2, advanced one pass small out, 38077
|
||||
github.tar, level 7 row 1 with dict load, advanced one pass small out, 37445
|
||||
github.tar, level 7 row 2, advanced one pass small out, 38235
|
||||
github.tar, level 7 row 2 with dict dms, advanced one pass small out, 38012
|
||||
github.tar, level 7 row 2 with dict dds, advanced one pass small out, 38014
|
||||
github.tar, level 7 row 2 with dict copy, advanced one pass small out, 38101
|
||||
github.tar, level 7 row 2 with dict load, advanced one pass small out, 37402
|
||||
github.tar, level 7, advanced one pass small out, 38005
|
||||
github.tar, level 7 row 2 with dict load, advanced one pass small out, 37552
|
||||
github.tar, level 7, advanced one pass small out, 38168
|
||||
github.tar, level 7 with dict, advanced one pass small out, 37839
|
||||
github.tar, level 7 with dict dms, advanced one pass small out, 37832
|
||||
github.tar, level 7 with dict dds, advanced one pass small out, 37857
|
||||
github.tar, level 7 with dict copy, advanced one pass small out, 37839
|
||||
github.tar, level 7 with dict load, advanced one pass small out, 37286
|
||||
github.tar, level 7 with dict load, advanced one pass small out, 37445
|
||||
github.tar, level 9, advanced one pass small out, 36723
|
||||
github.tar, level 9 with dict, advanced one pass small out, 36531
|
||||
github.tar, level 9 with dict dms, advanced one pass small out, 36615
|
||||
@@ -851,33 +851,33 @@ github.tar, level 19 with dict dms, advanced
|
||||
github.tar, level 19 with dict dds, advanced one pass small out, 32565
|
||||
github.tar, level 19 with dict copy, advanced one pass small out, 32701
|
||||
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 with dict, advanced one pass small out, 37995
|
||||
github.tar, long distance mode, advanced one pass small out, 40242
|
||||
github.tar, multithreaded, advanced one pass small out, 38884
|
||||
github.tar, multithreaded long distance mode, advanced one pass small out, 40223
|
||||
github.tar, no source size, advanced one pass small out, 39073
|
||||
github.tar, no source size with dict, advanced one pass small out, 38146
|
||||
github.tar, long distance mode, advanced one pass small out, 40402
|
||||
github.tar, multithreaded, advanced one pass small out, 39067
|
||||
github.tar, multithreaded long distance mode, advanced one pass small out, 40377
|
||||
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 chain log, advanced one pass small out, 41669
|
||||
github.tar, explicit params, advanced one pass small out, 41385
|
||||
github.tar, uncompressed literals, advanced one pass small out, 41562
|
||||
github.tar, explicit params, advanced one pass small out, 41605
|
||||
github.tar, uncompressed literals, advanced one pass small out, 41709
|
||||
github.tar, uncompressed literals optimal, advanced one pass small out, 35356
|
||||
github.tar, huffman literals, advanced one pass small out, 38853
|
||||
github.tar, multithreaded with advanced params, advanced one pass small out, 41562
|
||||
silesia, level -5, advanced streaming, 6854744
|
||||
silesia, level -3, advanced streaming, 6503319
|
||||
silesia, level -1, advanced streaming, 6172207
|
||||
silesia, level 0, advanced streaming, 4839431
|
||||
silesia, level 1, advanced streaming, 5306388
|
||||
silesia, level 3, advanced streaming, 4839431
|
||||
silesia, level 4, advanced streaming, 4776557
|
||||
silesia, level 5 row 1, advanced streaming, 4667668
|
||||
silesia, level 5 row 2, advanced streaming, 4670326
|
||||
silesia, level 5, advanced streaming, 4667668
|
||||
silesia, level 6, advanced streaming, 4604351
|
||||
silesia, level 7 row 1, advanced streaming, 4570271
|
||||
silesia, level 7 row 2, advanced streaming, 4565169
|
||||
silesia, level 7, advanced streaming, 4570271
|
||||
github.tar, huffman literals, advanced one pass small out, 39099
|
||||
github.tar, multithreaded with advanced params, advanced one pass small out, 41700
|
||||
silesia, level -5, advanced streaming, 6856699
|
||||
silesia, level -3, advanced streaming, 6505694
|
||||
silesia, level -1, advanced streaming, 6174139
|
||||
silesia, level 0, advanced streaming, 4839173
|
||||
silesia, level 1, advanced streaming, 5305682
|
||||
silesia, level 3, advanced streaming, 4839173
|
||||
silesia, level 4, advanced streaming, 4776074
|
||||
silesia, level 5 row 1, advanced streaming, 4667049
|
||||
silesia, level 5 row 2, advanced streaming, 4669474
|
||||
silesia, level 5, advanced streaming, 4667049
|
||||
silesia, level 6, advanced streaming, 4602956
|
||||
silesia, level 7 row 1, advanced streaming, 4568785
|
||||
silesia, level 7 row 2, advanced streaming, 4563722
|
||||
silesia, level 7, advanced streaming, 4568785
|
||||
silesia, level 9, advanced streaming, 4545850
|
||||
silesia, level 11 row 1, advanced streaming, 4505658
|
||||
silesia, level 11 row 2, advanced streaming, 4503429
|
||||
@@ -886,32 +886,32 @@ silesia, level 12 row 2, advanced
|
||||
silesia, level 13, advanced streaming, 4493990
|
||||
silesia, level 16, advanced streaming, 4359652
|
||||
silesia, level 19, advanced streaming, 4266582
|
||||
silesia, no source size, advanced streaming, 4839395
|
||||
silesia, long distance mode, advanced streaming, 4831158
|
||||
silesia, multithreaded, advanced streaming, 4839431
|
||||
silesia, multithreaded long distance mode, advanced streaming, 4831176
|
||||
silesia, no source size, advanced streaming, 4839137
|
||||
silesia, long distance mode, advanced streaming, 4831125
|
||||
silesia, multithreaded, advanced streaming, 4838949
|
||||
silesia, multithreaded long distance mode, advanced streaming, 4830419
|
||||
silesia, small window log, advanced streaming, 7110591
|
||||
silesia, small hash log, advanced streaming, 6526141
|
||||
silesia, small chain log, advanced streaming, 4912197
|
||||
silesia, explicit params, advanced streaming, 4795857
|
||||
silesia, uncompressed literals, advanced streaming, 5116957
|
||||
silesia, explicit params, advanced streaming, 4795053
|
||||
silesia, uncompressed literals, advanced streaming, 5117625
|
||||
silesia, uncompressed literals optimal, advanced streaming, 4316880
|
||||
silesia, huffman literals, advanced streaming, 5321370
|
||||
silesia, multithreaded with advanced params, advanced streaming, 5116957
|
||||
silesia.tar, level -5, advanced streaming, 6856523
|
||||
silesia.tar, level -3, advanced streaming, 6505954
|
||||
silesia.tar, level -1, advanced streaming, 6179056
|
||||
silesia.tar, level 0, advanced streaming, 4858632
|
||||
silesia.tar, level 1, advanced streaming, 5327708
|
||||
silesia.tar, level 3, advanced streaming, 4858632
|
||||
silesia.tar, level 4, advanced streaming, 4796895
|
||||
silesia.tar, level 5 row 1, advanced streaming, 4679020
|
||||
silesia.tar, level 5 row 2, advanced streaming, 4682355
|
||||
silesia.tar, level 5, advanced streaming, 4679020
|
||||
silesia.tar, level 6, advanced streaming, 4614558
|
||||
silesia.tar, level 7 row 1, advanced streaming, 4579823
|
||||
silesia.tar, level 7 row 2, advanced streaming, 4575601
|
||||
silesia.tar, level 7, advanced streaming, 4579823
|
||||
silesia, huffman literals, advanced streaming, 5321812
|
||||
silesia, multithreaded with advanced params, advanced streaming, 5117795
|
||||
silesia.tar, level -5, advanced streaming, 6857458
|
||||
silesia.tar, level -3, advanced streaming, 6508562
|
||||
silesia.tar, level -1, advanced streaming, 6178057
|
||||
silesia.tar, level 0, advanced streaming, 4849720
|
||||
silesia.tar, level 1, advanced streaming, 5311452
|
||||
silesia.tar, level 3, advanced streaming, 4849720
|
||||
silesia.tar, level 4, advanced streaming, 4787534
|
||||
silesia.tar, level 5 row 1, advanced streaming, 4669420
|
||||
silesia.tar, level 5 row 2, advanced streaming, 4673610
|
||||
silesia.tar, level 5, advanced streaming, 4669420
|
||||
silesia.tar, level 6, advanced streaming, 4604125
|
||||
silesia.tar, level 7 row 1, advanced streaming, 4570206
|
||||
silesia.tar, level 7 row 2, advanced streaming, 4565792
|
||||
silesia.tar, level 7, advanced streaming, 4570206
|
||||
silesia.tar, level 9, advanced streaming, 4555445
|
||||
silesia.tar, level 11 row 1, advanced streaming, 4514959
|
||||
silesia.tar, level 11 row 2, advanced streaming, 4513810
|
||||
@@ -920,18 +920,18 @@ silesia.tar, level 12 row 2, advanced
|
||||
silesia.tar, level 13, advanced streaming, 4502956
|
||||
silesia.tar, level 16, advanced streaming, 4360385
|
||||
silesia.tar, level 19, advanced streaming, 4260939
|
||||
silesia.tar, no source size, advanced streaming, 4858628
|
||||
silesia.tar, long distance mode, advanced streaming, 4837775
|
||||
silesia.tar, multithreaded, advanced streaming, 4851478
|
||||
silesia.tar, multithreaded long distance mode, advanced streaming, 4843155
|
||||
silesia.tar, no source size, advanced streaming, 4849716
|
||||
silesia.tar, long distance mode, advanced streaming, 4829339
|
||||
silesia.tar, multithreaded, advanced streaming, 4841902
|
||||
silesia.tar, multithreaded long distance mode, advanced streaming, 4834262
|
||||
silesia.tar, small window log, advanced streaming, 7117024
|
||||
silesia.tar, small hash log, advanced streaming, 6529209
|
||||
silesia.tar, small chain log, advanced streaming, 4917021
|
||||
silesia.tar, explicit params, advanced streaming, 4807288
|
||||
silesia.tar, uncompressed literals, advanced streaming, 5126542
|
||||
silesia.tar, explicit params, advanced streaming, 4797673
|
||||
silesia.tar, uncompressed literals, advanced streaming, 5124811
|
||||
silesia.tar, uncompressed literals optimal, advanced streaming, 4308451
|
||||
silesia.tar, huffman literals, advanced streaming, 5341712
|
||||
silesia.tar, multithreaded with advanced params, advanced streaming, 5118940
|
||||
silesia.tar, huffman literals, advanced streaming, 5326278
|
||||
silesia.tar, multithreaded with advanced params, advanced streaming, 5116442
|
||||
github, level -5, advanced streaming, 204407
|
||||
github, level -5 with dict, advanced streaming, 45832
|
||||
github, level -3, advanced streaming, 193253
|
||||
@@ -1057,74 +1057,74 @@ github, uncompressed literals, advanced
|
||||
github, uncompressed literals optimal, advanced streaming, 152667
|
||||
github, huffman literals, advanced streaming, 142365
|
||||
github, multithreaded with advanced params, advanced streaming, 165909
|
||||
github.tar, level -5, advanced streaming, 52152
|
||||
github.tar, level -5 with dict, advanced streaming, 51181
|
||||
github.tar, level -3, advanced streaming, 45678
|
||||
github.tar, level -3 with dict, advanced streaming, 44734
|
||||
github.tar, level -1, advanced streaming, 42560
|
||||
github.tar, level -1 with dict, advanced streaming, 41353
|
||||
github.tar, level 0, advanced streaming, 38884
|
||||
github.tar, level 0 with dict, advanced streaming, 37995
|
||||
github.tar, level 0 with dict dms, advanced streaming, 38114
|
||||
github.tar, level 0 with dict dds, advanced streaming, 38114
|
||||
github.tar, level 0 with dict copy, advanced streaming, 37995
|
||||
github.tar, level 0 with dict load, advanced streaming, 37956
|
||||
github.tar, level 1, advanced streaming, 39200
|
||||
github.tar, level 1 with dict, advanced streaming, 38119
|
||||
github.tar, level 1 with dict dms, advanced streaming, 38406
|
||||
github.tar, level 1 with dict dds, advanced streaming, 38406
|
||||
github.tar, level 1 with dict copy, advanced streaming, 38119
|
||||
github.tar, level 1 with dict load, advanced streaming, 38364
|
||||
github.tar, level 3, advanced streaming, 38884
|
||||
github.tar, level 3 with dict, advanced streaming, 37995
|
||||
github.tar, level 3 with dict dms, advanced streaming, 38114
|
||||
github.tar, level 3 with dict dds, advanced streaming, 38114
|
||||
github.tar, level 3 with dict copy, advanced streaming, 37995
|
||||
github.tar, level 3 with dict load, advanced streaming, 37956
|
||||
github.tar, level 4, advanced streaming, 38880
|
||||
github.tar, level 4 with dict, advanced streaming, 37948
|
||||
github.tar, level 4 with dict dms, advanced streaming, 37995
|
||||
github.tar, level 4 with dict dds, advanced streaming, 37995
|
||||
github.tar, level 4 with dict copy, advanced streaming, 37948
|
||||
github.tar, level 4 with dict load, advanced streaming, 37927
|
||||
github.tar, level 5 row 1, advanced streaming, 39651
|
||||
github.tar, level 5 row 1 with dict dms, advanced streaming, 39043
|
||||
github.tar, level 5 row 1 with dict dds, advanced streaming, 39069
|
||||
github.tar, level 5 row 1 with dict copy, advanced streaming, 39145
|
||||
github.tar, level 5 row 1 with dict load, advanced streaming, 39000
|
||||
github.tar, level 5 row 2, advanced streaming, 39701
|
||||
github.tar, level 5 row 2 with dict dms, advanced streaming, 39365
|
||||
github.tar, level 5 row 2 with dict dds, advanced streaming, 39233
|
||||
github.tar, level 5 row 2 with dict copy, advanced streaming, 39715
|
||||
github.tar, level 5 row 2 with dict load, advanced streaming, 39158
|
||||
github.tar, level 5, advanced streaming, 39651
|
||||
github.tar, level 5 with dict, advanced streaming, 39145
|
||||
github.tar, level 5 with dict dms, advanced streaming, 39043
|
||||
github.tar, level 5 with dict dds, advanced streaming, 39069
|
||||
github.tar, level 5 with dict copy, advanced streaming, 39145
|
||||
github.tar, level 5 with dict load, advanced streaming, 39000
|
||||
github.tar, level 6, advanced streaming, 39282
|
||||
github.tar, level 6 with dict, advanced streaming, 38656
|
||||
github.tar, level 6 with dict dms, advanced streaming, 38640
|
||||
github.tar, level 6 with dict dds, advanced streaming, 38643
|
||||
github.tar, level 6 with dict copy, advanced streaming, 38656
|
||||
github.tar, level 6 with dict load, advanced streaming, 38647
|
||||
github.tar, level 7 row 1, advanced streaming, 38005
|
||||
github.tar, level -5, advanced streaming, 52384
|
||||
github.tar, level -5 with dict, advanced streaming, 51420
|
||||
github.tar, level -3, advanced streaming, 45907
|
||||
github.tar, level -3 with dict, advanced streaming, 44973
|
||||
github.tar, level -1, advanced streaming, 42777
|
||||
github.tar, level -1 with dict, advanced streaming, 41603
|
||||
github.tar, level 0, advanced streaming, 39249
|
||||
github.tar, level 0 with dict, advanced streaming, 38309
|
||||
github.tar, level 0 with dict dms, advanced streaming, 38445
|
||||
github.tar, level 0 with dict dds, advanced streaming, 38445
|
||||
github.tar, level 0 with dict copy, advanced streaming, 38309
|
||||
github.tar, level 0 with dict load, advanced streaming, 38281
|
||||
github.tar, level 1, advanced streaming, 39550
|
||||
github.tar, level 1 with dict, advanced streaming, 38502
|
||||
github.tar, level 1 with dict dms, advanced streaming, 38770
|
||||
github.tar, level 1 with dict dds, advanced streaming, 38770
|
||||
github.tar, level 1 with dict copy, advanced streaming, 38502
|
||||
github.tar, level 1 with dict load, advanced streaming, 38716
|
||||
github.tar, level 3, advanced streaming, 39249
|
||||
github.tar, level 3 with dict, advanced streaming, 38309
|
||||
github.tar, level 3 with dict dms, advanced streaming, 38445
|
||||
github.tar, level 3 with dict dds, advanced streaming, 38445
|
||||
github.tar, level 3 with dict copy, advanced streaming, 38309
|
||||
github.tar, level 3 with dict load, advanced streaming, 38281
|
||||
github.tar, level 4, advanced streaming, 39247
|
||||
github.tar, level 4 with dict, advanced streaming, 38270
|
||||
github.tar, level 4 with dict dms, advanced streaming, 38317
|
||||
github.tar, level 4 with dict dds, advanced streaming, 38317
|
||||
github.tar, level 4 with dict copy, advanced streaming, 38270
|
||||
github.tar, level 4 with dict load, advanced streaming, 38259
|
||||
github.tar, level 5 row 1, advanced streaming, 39986
|
||||
github.tar, level 5 row 1 with dict dms, advanced streaming, 39370
|
||||
github.tar, level 5 row 1 with dict dds, advanced streaming, 39396
|
||||
github.tar, level 5 row 1 with dict copy, advanced streaming, 39465
|
||||
github.tar, level 5 row 1 with dict load, advanced streaming, 39332
|
||||
github.tar, level 5 row 2, advanced streaming, 40038
|
||||
github.tar, level 5 row 2 with dict dms, advanced streaming, 39690
|
||||
github.tar, level 5 row 2 with dict dds, advanced streaming, 39555
|
||||
github.tar, level 5 row 2 with dict copy, advanced streaming, 40036
|
||||
github.tar, level 5 row 2 with dict load, advanced streaming, 39498
|
||||
github.tar, level 5, advanced streaming, 39986
|
||||
github.tar, level 5 with dict, advanced streaming, 39465
|
||||
github.tar, level 5 with dict dms, advanced streaming, 39370
|
||||
github.tar, level 5 with dict dds, advanced streaming, 39396
|
||||
github.tar, level 5 with dict copy, advanced streaming, 39465
|
||||
github.tar, level 5 with dict load, advanced streaming, 39332
|
||||
github.tar, level 6, advanced streaming, 39565
|
||||
github.tar, level 6 with dict, advanced streaming, 38894
|
||||
github.tar, level 6 with dict dms, advanced streaming, 38901
|
||||
github.tar, level 6 with dict dds, advanced streaming, 38903
|
||||
github.tar, level 6 with dict copy, advanced streaming, 38894
|
||||
github.tar, level 6 with dict load, advanced streaming, 38906
|
||||
github.tar, level 7 row 1, advanced streaming, 38295
|
||||
github.tar, level 7 row 1 with dict dms, advanced streaming, 37832
|
||||
github.tar, level 7 row 1 with dict dds, advanced streaming, 37857
|
||||
github.tar, level 7 row 1 with dict copy, advanced streaming, 37839
|
||||
github.tar, level 7 row 1 with dict load, advanced streaming, 37286
|
||||
github.tar, level 7 row 2, advanced streaming, 38077
|
||||
github.tar, level 7 row 1 with dict load, advanced streaming, 37565
|
||||
github.tar, level 7 row 2, advanced streaming, 38369
|
||||
github.tar, level 7 row 2 with dict dms, advanced streaming, 38012
|
||||
github.tar, level 7 row 2 with dict dds, advanced streaming, 38014
|
||||
github.tar, level 7 row 2 with dict copy, advanced streaming, 38101
|
||||
github.tar, level 7 row 2 with dict load, advanced streaming, 37402
|
||||
github.tar, level 7, advanced streaming, 38005
|
||||
github.tar, level 7 row 2 with dict load, advanced streaming, 37688
|
||||
github.tar, level 7, advanced streaming, 38295
|
||||
github.tar, level 7 with dict, advanced streaming, 37839
|
||||
github.tar, level 7 with dict dms, advanced streaming, 37832
|
||||
github.tar, level 7 with dict dds, advanced streaming, 37857
|
||||
github.tar, level 7 with dict copy, advanced streaming, 37839
|
||||
github.tar, level 7 with dict load, advanced streaming, 37286
|
||||
github.tar, level 7 with dict load, advanced streaming, 37565
|
||||
github.tar, level 9, advanced streaming, 36723
|
||||
github.tar, level 9 with dict, advanced streaming, 36531
|
||||
github.tar, level 9 with dict dms, advanced streaming, 36615
|
||||
@@ -1169,55 +1169,55 @@ github.tar, level 19 with dict dms, advanced
|
||||
github.tar, level 19 with dict dds, advanced streaming, 32565
|
||||
github.tar, level 19 with dict copy, advanced streaming, 32701
|
||||
github.tar, level 19 with dict load, advanced streaming, 32428
|
||||
github.tar, no source size, advanced streaming, 38881
|
||||
github.tar, no source size with dict, advanced streaming, 38111
|
||||
github.tar, long distance mode, advanced streaming, 40242
|
||||
github.tar, multithreaded, advanced streaming, 38884
|
||||
github.tar, multithreaded long distance mode, advanced streaming, 40223
|
||||
github.tar, no source size, advanced streaming, 39246
|
||||
github.tar, no source size with dict, advanced streaming, 38442
|
||||
github.tar, long distance mode, advanced streaming, 40569
|
||||
github.tar, multithreaded, advanced streaming, 39067
|
||||
github.tar, multithreaded long distance mode, advanced streaming, 40377
|
||||
github.tar, small window log, advanced streaming, 199553
|
||||
github.tar, small hash log, advanced streaming, 129870
|
||||
github.tar, small chain log, advanced streaming, 41669
|
||||
github.tar, explicit params, advanced streaming, 41385
|
||||
github.tar, uncompressed literals, advanced streaming, 41562
|
||||
github.tar, explicit params, advanced streaming, 41768
|
||||
github.tar, uncompressed literals, advanced streaming, 41784
|
||||
github.tar, uncompressed literals optimal, advanced streaming, 35356
|
||||
github.tar, huffman literals, advanced streaming, 38853
|
||||
github.tar, multithreaded with advanced params, advanced streaming, 41562
|
||||
silesia, level -5, old streaming, 6854744
|
||||
silesia, level -3, old streaming, 6503319
|
||||
silesia, level -1, old streaming, 6172207
|
||||
silesia, level 0, old streaming, 4839431
|
||||
silesia, level 1, old streaming, 5306388
|
||||
silesia, level 3, old streaming, 4839431
|
||||
silesia, level 4, old streaming, 4776557
|
||||
silesia, level 5, old streaming, 4667668
|
||||
silesia, level 6, old streaming, 4604351
|
||||
silesia, level 7, old streaming, 4570271
|
||||
github.tar, huffman literals, advanced streaming, 39226
|
||||
github.tar, multithreaded with advanced params, advanced streaming, 41700
|
||||
silesia, level -5, old streaming, 6856699
|
||||
silesia, level -3, old streaming, 6505694
|
||||
silesia, level -1, old streaming, 6174139
|
||||
silesia, level 0, old streaming, 4839173
|
||||
silesia, level 1, old streaming, 5305682
|
||||
silesia, level 3, old streaming, 4839173
|
||||
silesia, level 4, old streaming, 4776074
|
||||
silesia, level 5, old streaming, 4667049
|
||||
silesia, level 6, old streaming, 4602956
|
||||
silesia, level 7, old streaming, 4568785
|
||||
silesia, level 9, old streaming, 4545850
|
||||
silesia, level 13, old streaming, 4493990
|
||||
silesia, level 16, old streaming, 4359652
|
||||
silesia, level 19, old streaming, 4266582
|
||||
silesia, no source size, old streaming, 4839395
|
||||
silesia, uncompressed literals, old streaming, 4839431
|
||||
silesia, no source size, old streaming, 4839137
|
||||
silesia, uncompressed literals, old streaming, 4839173
|
||||
silesia, uncompressed literals optimal, old streaming, 4266582
|
||||
silesia, huffman literals, old streaming, 6172207
|
||||
silesia.tar, level -5, old streaming, 6856523
|
||||
silesia.tar, level -3, old streaming, 6505954
|
||||
silesia.tar, level -1, old streaming, 6179056
|
||||
silesia.tar, level 0, old streaming, 4858632
|
||||
silesia.tar, level 1, old streaming, 5327708
|
||||
silesia.tar, level 3, old streaming, 4858632
|
||||
silesia.tar, level 4, old streaming, 4796895
|
||||
silesia.tar, level 5, old streaming, 4679020
|
||||
silesia.tar, level 6, old streaming, 4614558
|
||||
silesia.tar, level 7, old streaming, 4579823
|
||||
silesia, huffman literals, old streaming, 6174139
|
||||
silesia.tar, level -5, old streaming, 6857458
|
||||
silesia.tar, level -3, old streaming, 6508562
|
||||
silesia.tar, level -1, old streaming, 6178057
|
||||
silesia.tar, level 0, old streaming, 4849720
|
||||
silesia.tar, level 1, old streaming, 5311452
|
||||
silesia.tar, level 3, old streaming, 4849720
|
||||
silesia.tar, level 4, old streaming, 4787534
|
||||
silesia.tar, level 5, old streaming, 4669420
|
||||
silesia.tar, level 6, old streaming, 4604125
|
||||
silesia.tar, level 7, old streaming, 4570206
|
||||
silesia.tar, level 9, old streaming, 4555445
|
||||
silesia.tar, level 13, old streaming, 4502956
|
||||
silesia.tar, level 16, old streaming, 4360385
|
||||
silesia.tar, level 19, old streaming, 4260939
|
||||
silesia.tar, no source size, old streaming, 4858628
|
||||
silesia.tar, uncompressed literals, old streaming, 4858632
|
||||
silesia.tar, no source size, old streaming, 4849716
|
||||
silesia.tar, uncompressed literals, old streaming, 4849720
|
||||
silesia.tar, uncompressed literals optimal, old streaming, 4260939
|
||||
silesia.tar, huffman literals, old streaming, 6179056
|
||||
silesia.tar, huffman literals, old streaming, 6178057
|
||||
github, level -5, old streaming, 204407
|
||||
github, level -5 with dict, old streaming, 45832
|
||||
github, level -3, old streaming, 193253
|
||||
@@ -1251,25 +1251,25 @@ github, no source size with dict, old stre
|
||||
github, uncompressed literals, old streaming, 136331
|
||||
github, uncompressed literals optimal, old streaming, 132879
|
||||
github, huffman literals, old streaming, 175468
|
||||
github.tar, level -5, old streaming, 52152
|
||||
github.tar, level -5 with dict, old streaming, 51181
|
||||
github.tar, level -3, old streaming, 45678
|
||||
github.tar, level -3 with dict, old streaming, 44734
|
||||
github.tar, level -1, old streaming, 42560
|
||||
github.tar, level -1 with dict, old streaming, 41353
|
||||
github.tar, level 0, old streaming, 38884
|
||||
github.tar, level 0 with dict, old streaming, 37995
|
||||
github.tar, level 1, old streaming, 39200
|
||||
github.tar, level 1 with dict, old streaming, 38119
|
||||
github.tar, level 3, old streaming, 38884
|
||||
github.tar, level 3 with dict, old streaming, 37995
|
||||
github.tar, level 4, old streaming, 38880
|
||||
github.tar, level 4 with dict, old streaming, 37948
|
||||
github.tar, level 5, old streaming, 39651
|
||||
github.tar, level 5 with dict, old streaming, 39145
|
||||
github.tar, level 6, old streaming, 39282
|
||||
github.tar, level 6 with dict, old streaming, 38656
|
||||
github.tar, level 7, old streaming, 38005
|
||||
github.tar, level -5, old streaming, 52384
|
||||
github.tar, level -5 with dict, old streaming, 51420
|
||||
github.tar, level -3, old streaming, 45907
|
||||
github.tar, level -3 with dict, old streaming, 44973
|
||||
github.tar, level -1, old streaming, 42777
|
||||
github.tar, level -1 with dict, old streaming, 41603
|
||||
github.tar, level 0, old streaming, 39249
|
||||
github.tar, level 0 with dict, old streaming, 38309
|
||||
github.tar, level 1, old streaming, 39550
|
||||
github.tar, level 1 with dict, old streaming, 38502
|
||||
github.tar, level 3, old streaming, 39249
|
||||
github.tar, level 3 with dict, old streaming, 38309
|
||||
github.tar, level 4, old streaming, 39247
|
||||
github.tar, level 4 with dict, old streaming, 38270
|
||||
github.tar, level 5, old streaming, 39986
|
||||
github.tar, level 5 with dict, old streaming, 39465
|
||||
github.tar, level 6, old streaming, 39565
|
||||
github.tar, level 6 with dict, old streaming, 38894
|
||||
github.tar, level 7, old streaming, 38295
|
||||
github.tar, level 7 with dict, old streaming, 37839
|
||||
github.tar, level 9, old streaming, 36723
|
||||
github.tar, level 9 with dict, old streaming, 36531
|
||||
@@ -1279,63 +1279,63 @@ github.tar, level 16, old stre
|
||||
github.tar, level 16 with dict, old streaming, 33375
|
||||
github.tar, level 19, old streaming, 32262
|
||||
github.tar, level 19 with dict, old streaming, 32701
|
||||
github.tar, no source size, old streaming, 38881
|
||||
github.tar, no source size with dict, old streaming, 38111
|
||||
github.tar, uncompressed literals, old streaming, 38884
|
||||
github.tar, no source size, old streaming, 39246
|
||||
github.tar, no source size with dict, old streaming, 38442
|
||||
github.tar, uncompressed literals, old streaming, 39249
|
||||
github.tar, uncompressed literals optimal, old streaming, 32262
|
||||
github.tar, huffman literals, old streaming, 42560
|
||||
silesia, level -5, old streaming advanced, 6854744
|
||||
silesia, level -3, old streaming advanced, 6503319
|
||||
silesia, level -1, old streaming advanced, 6172207
|
||||
silesia, level 0, old streaming advanced, 4839431
|
||||
silesia, level 1, old streaming advanced, 5306388
|
||||
silesia, level 3, old streaming advanced, 4839431
|
||||
silesia, level 4, old streaming advanced, 4776557
|
||||
silesia, level 5, old streaming advanced, 4667668
|
||||
silesia, level 6, old streaming advanced, 4604351
|
||||
silesia, level 7, old streaming advanced, 4570271
|
||||
github.tar, huffman literals, old streaming, 42777
|
||||
silesia, level -5, old streaming advanced, 6856699
|
||||
silesia, level -3, old streaming advanced, 6505694
|
||||
silesia, level -1, old streaming advanced, 6174139
|
||||
silesia, level 0, old streaming advanced, 4839173
|
||||
silesia, level 1, old streaming advanced, 5305682
|
||||
silesia, level 3, old streaming advanced, 4839173
|
||||
silesia, level 4, old streaming advanced, 4776074
|
||||
silesia, level 5, old streaming advanced, 4667049
|
||||
silesia, level 6, old streaming advanced, 4602956
|
||||
silesia, level 7, old streaming advanced, 4568785
|
||||
silesia, level 9, old streaming advanced, 4545850
|
||||
silesia, level 13, old streaming advanced, 4493990
|
||||
silesia, level 16, old streaming advanced, 4359652
|
||||
silesia, level 19, old streaming advanced, 4266582
|
||||
silesia, no source size, old streaming advanced, 4839395
|
||||
silesia, long distance mode, old streaming advanced, 4839431
|
||||
silesia, multithreaded, old streaming advanced, 4839431
|
||||
silesia, multithreaded long distance mode, old streaming advanced, 4839431
|
||||
silesia, no source size, old streaming advanced, 4839137
|
||||
silesia, long distance mode, old streaming advanced, 4839173
|
||||
silesia, multithreaded, old streaming advanced, 4839173
|
||||
silesia, multithreaded long distance mode, old streaming advanced, 4839173
|
||||
silesia, small window log, old streaming advanced, 7110591
|
||||
silesia, small hash log, old streaming advanced, 6526141
|
||||
silesia, small chain log, old streaming advanced, 4912197
|
||||
silesia, explicit params, old streaming advanced, 4795857
|
||||
silesia, uncompressed literals, old streaming advanced, 4839431
|
||||
silesia, explicit params, old streaming advanced, 4795053
|
||||
silesia, uncompressed literals, old streaming advanced, 4839173
|
||||
silesia, uncompressed literals optimal, old streaming advanced, 4266582
|
||||
silesia, huffman literals, old streaming advanced, 6172207
|
||||
silesia, multithreaded with advanced params, old streaming advanced, 4839431
|
||||
silesia.tar, level -5, old streaming advanced, 6856523
|
||||
silesia.tar, level -3, old streaming advanced, 6505954
|
||||
silesia.tar, level -1, old streaming advanced, 6179056
|
||||
silesia.tar, level 0, old streaming advanced, 4858632
|
||||
silesia.tar, level 1, old streaming advanced, 5327708
|
||||
silesia.tar, level 3, old streaming advanced, 4858632
|
||||
silesia.tar, level 4, old streaming advanced, 4796895
|
||||
silesia.tar, level 5, old streaming advanced, 4679020
|
||||
silesia.tar, level 6, old streaming advanced, 4614558
|
||||
silesia.tar, level 7, old streaming advanced, 4579823
|
||||
silesia, huffman literals, old streaming advanced, 6174139
|
||||
silesia, multithreaded with advanced params, old streaming advanced, 4839173
|
||||
silesia.tar, level -5, old streaming advanced, 6857458
|
||||
silesia.tar, level -3, old streaming advanced, 6508562
|
||||
silesia.tar, level -1, old streaming advanced, 6178057
|
||||
silesia.tar, level 0, old streaming advanced, 4849720
|
||||
silesia.tar, level 1, old streaming advanced, 5311452
|
||||
silesia.tar, level 3, old streaming advanced, 4849720
|
||||
silesia.tar, level 4, old streaming advanced, 4787534
|
||||
silesia.tar, level 5, old streaming advanced, 4669420
|
||||
silesia.tar, level 6, old streaming advanced, 4604125
|
||||
silesia.tar, level 7, old streaming advanced, 4570206
|
||||
silesia.tar, level 9, old streaming advanced, 4555445
|
||||
silesia.tar, level 13, old streaming advanced, 4502956
|
||||
silesia.tar, level 16, old streaming advanced, 4360385
|
||||
silesia.tar, level 19, old streaming advanced, 4260939
|
||||
silesia.tar, no source size, old streaming advanced, 4858628
|
||||
silesia.tar, long distance mode, old streaming advanced, 4858632
|
||||
silesia.tar, multithreaded, old streaming advanced, 4858632
|
||||
silesia.tar, multithreaded long distance mode, old streaming advanced, 4858632
|
||||
silesia.tar, no source size, old streaming advanced, 4849716
|
||||
silesia.tar, long distance mode, old streaming advanced, 4849720
|
||||
silesia.tar, multithreaded, old streaming advanced, 4849720
|
||||
silesia.tar, multithreaded long distance mode, old streaming advanced, 4849720
|
||||
silesia.tar, small window log, old streaming advanced, 7117027
|
||||
silesia.tar, small hash log, old streaming advanced, 6529209
|
||||
silesia.tar, small chain log, old streaming advanced, 4917021
|
||||
silesia.tar, explicit params, old streaming advanced, 4807288
|
||||
silesia.tar, uncompressed literals, old streaming advanced, 4858632
|
||||
silesia.tar, explicit params, old streaming advanced, 4797673
|
||||
silesia.tar, uncompressed literals, old streaming advanced, 4849720
|
||||
silesia.tar, uncompressed literals optimal, old streaming advanced, 4260939
|
||||
silesia.tar, huffman literals, old streaming advanced, 6179056
|
||||
silesia.tar, multithreaded with advanced params, old streaming advanced, 4858632
|
||||
silesia.tar, huffman literals, old streaming advanced, 6178057
|
||||
silesia.tar, multithreaded with advanced params, old streaming advanced, 4849720
|
||||
github, level -5, old streaming advanced, 213265
|
||||
github, level -5 with dict, old streaming advanced, 46708
|
||||
github, level -3, old streaming advanced, 196126
|
||||
@@ -1377,26 +1377,26 @@ github, uncompressed literals, old stre
|
||||
github, uncompressed literals optimal, old streaming advanced, 132879
|
||||
github, huffman literals, old streaming advanced, 181107
|
||||
github, multithreaded with advanced params, old streaming advanced, 141101
|
||||
github.tar, level -5, old streaming advanced, 52152
|
||||
github.tar, level -5 with dict, old streaming advanced, 51129
|
||||
github.tar, level -3, old streaming advanced, 45678
|
||||
github.tar, level -3 with dict, old streaming advanced, 44986
|
||||
github.tar, level -1, old streaming advanced, 42560
|
||||
github.tar, level -1 with dict, old streaming advanced, 41650
|
||||
github.tar, level 0, old streaming advanced, 38884
|
||||
github.tar, level 0 with dict, old streaming advanced, 38013
|
||||
github.tar, level 1, old streaming advanced, 39200
|
||||
github.tar, level 1 with dict, old streaming advanced, 38359
|
||||
github.tar, level 3, old streaming advanced, 38884
|
||||
github.tar, level 3 with dict, old streaming advanced, 38013
|
||||
github.tar, level 4, old streaming advanced, 38880
|
||||
github.tar, level 4 with dict, old streaming advanced, 38063
|
||||
github.tar, level 5, old streaming advanced, 39651
|
||||
github.tar, level 5 with dict, old streaming advanced, 39018
|
||||
github.tar, level 6, old streaming advanced, 39282
|
||||
github.tar, level 6 with dict, old streaming advanced, 38635
|
||||
github.tar, level 7, old streaming advanced, 38005
|
||||
github.tar, level 7 with dict, old streaming advanced, 37264
|
||||
github.tar, level -5, old streaming advanced, 52384
|
||||
github.tar, level -5 with dict, old streaming advanced, 51359
|
||||
github.tar, level -3, old streaming advanced, 45907
|
||||
github.tar, level -3 with dict, old streaming advanced, 45211
|
||||
github.tar, level -1, old streaming advanced, 42777
|
||||
github.tar, level -1 with dict, old streaming advanced, 41865
|
||||
github.tar, level 0, old streaming advanced, 39249
|
||||
github.tar, level 0 with dict, old streaming advanced, 38327
|
||||
github.tar, level 1, old streaming advanced, 39550
|
||||
github.tar, level 1 with dict, old streaming advanced, 38714
|
||||
github.tar, level 3, old streaming advanced, 39249
|
||||
github.tar, level 3 with dict, old streaming advanced, 38327
|
||||
github.tar, level 4, old streaming advanced, 39247
|
||||
github.tar, level 4 with dict, old streaming advanced, 38382
|
||||
github.tar, level 5, old streaming advanced, 39986
|
||||
github.tar, level 5 with dict, old streaming advanced, 39347
|
||||
github.tar, level 6, old streaming advanced, 39565
|
||||
github.tar, level 6 with dict, old streaming advanced, 38889
|
||||
github.tar, level 7, old streaming advanced, 38295
|
||||
github.tar, level 7 with dict, old streaming advanced, 37534
|
||||
github.tar, level 9, old streaming advanced, 36723
|
||||
github.tar, level 9 with dict, old streaming advanced, 36241
|
||||
github.tar, level 13, old streaming advanced, 35501
|
||||
@@ -1405,19 +1405,19 @@ github.tar, level 16, old stre
|
||||
github.tar, level 16 with dict, old streaming advanced, 38578
|
||||
github.tar, level 19, old streaming advanced, 32262
|
||||
github.tar, level 19 with dict, old streaming advanced, 32678
|
||||
github.tar, no source size, old streaming advanced, 38881
|
||||
github.tar, no source size with dict, old streaming advanced, 38076
|
||||
github.tar, long distance mode, old streaming advanced, 38884
|
||||
github.tar, multithreaded, old streaming advanced, 38884
|
||||
github.tar, multithreaded long distance mode, old streaming advanced, 38884
|
||||
github.tar, no source size, old streaming advanced, 39246
|
||||
github.tar, no source size with dict, old streaming advanced, 38399
|
||||
github.tar, long distance mode, old streaming advanced, 39249
|
||||
github.tar, multithreaded, old streaming advanced, 39249
|
||||
github.tar, multithreaded long distance mode, old streaming advanced, 39249
|
||||
github.tar, small window log, old streaming advanced, 199556
|
||||
github.tar, small hash log, old streaming advanced, 129870
|
||||
github.tar, small chain log, old streaming advanced, 41669
|
||||
github.tar, explicit params, old streaming advanced, 41385
|
||||
github.tar, uncompressed literals, old streaming advanced, 38884
|
||||
github.tar, explicit params, old streaming advanced, 41768
|
||||
github.tar, uncompressed literals, old streaming advanced, 39249
|
||||
github.tar, uncompressed literals optimal, old streaming advanced, 32262
|
||||
github.tar, huffman literals, old streaming advanced, 42560
|
||||
github.tar, multithreaded with advanced params, old streaming advanced, 38884
|
||||
github.tar, huffman literals, old streaming advanced, 42777
|
||||
github.tar, multithreaded with advanced params, old streaming advanced, 39249
|
||||
github, level -5 with dict, old streaming cdict, 45832
|
||||
github, level -3 with dict, old streaming cdict, 44671
|
||||
github, level -1 with dict, old streaming cdict, 41825
|
||||
@@ -1433,21 +1433,21 @@ github, level 13 with dict, old stre
|
||||
github, level 16 with dict, old streaming cdict, 37902
|
||||
github, level 19 with dict, old streaming cdict, 37916
|
||||
github, no source size with dict, old streaming cdict, 40652
|
||||
github.tar, level -5 with dict, old streaming cdict, 51286
|
||||
github.tar, level -3 with dict, old streaming cdict, 45147
|
||||
github.tar, level -1 with dict, old streaming cdict, 41865
|
||||
github.tar, level 0 with dict, old streaming cdict, 37956
|
||||
github.tar, level 1 with dict, old streaming cdict, 38364
|
||||
github.tar, level 3 with dict, old streaming cdict, 37956
|
||||
github.tar, level 4 with dict, old streaming cdict, 37927
|
||||
github.tar, level 5 with dict, old streaming cdict, 39000
|
||||
github.tar, level 6 with dict, old streaming cdict, 38647
|
||||
github.tar, level 7 with dict, old streaming cdict, 37286
|
||||
github.tar, level -5 with dict, old streaming cdict, 51512
|
||||
github.tar, level -3 with dict, old streaming cdict, 45379
|
||||
github.tar, level -1 with dict, old streaming cdict, 42084
|
||||
github.tar, level 0 with dict, old streaming cdict, 38281
|
||||
github.tar, level 1 with dict, old streaming cdict, 38716
|
||||
github.tar, level 3 with dict, old streaming cdict, 38281
|
||||
github.tar, level 4 with dict, old streaming cdict, 38259
|
||||
github.tar, level 5 with dict, old streaming cdict, 39332
|
||||
github.tar, level 6 with dict, old streaming cdict, 38906
|
||||
github.tar, level 7 with dict, old streaming cdict, 37565
|
||||
github.tar, level 9 with dict, old streaming cdict, 36322
|
||||
github.tar, level 13 with dict, old streaming cdict, 36010
|
||||
github.tar, level 16 with dict, old streaming cdict, 39081
|
||||
github.tar, level 19 with dict, old streaming cdict, 32428
|
||||
github.tar, no source size with dict, old streaming cdict, 38111
|
||||
github.tar, no source size with dict, old streaming cdict, 38442
|
||||
github, level -5 with dict, old streaming advanced cdict, 46708
|
||||
github, level -3 with dict, old streaming advanced cdict, 45476
|
||||
github, level -1 with dict, old streaming advanced cdict, 42060
|
||||
@@ -1463,18 +1463,18 @@ github, level 13 with dict, old stre
|
||||
github, level 16 with dict, old streaming advanced cdict, 40804
|
||||
github, level 19 with dict, old streaming advanced cdict, 37916
|
||||
github, no source size with dict, old streaming advanced cdict, 40608
|
||||
github.tar, level -5 with dict, old streaming advanced cdict, 50791
|
||||
github.tar, level -3 with dict, old streaming advanced cdict, 44926
|
||||
github.tar, level -1 with dict, old streaming advanced cdict, 41482
|
||||
github.tar, level 0 with dict, old streaming advanced cdict, 38013
|
||||
github.tar, level 1 with dict, old streaming advanced cdict, 38168
|
||||
github.tar, level 3 with dict, old streaming advanced cdict, 38013
|
||||
github.tar, level 4 with dict, old streaming advanced cdict, 38063
|
||||
github.tar, level 5 with dict, old streaming advanced cdict, 39018
|
||||
github.tar, level 6 with dict, old streaming advanced cdict, 38635
|
||||
github.tar, level 7 with dict, old streaming advanced cdict, 37264
|
||||
github.tar, level -5 with dict, old streaming advanced cdict, 51019
|
||||
github.tar, level -3 with dict, old streaming advanced cdict, 45149
|
||||
github.tar, level -1 with dict, old streaming advanced cdict, 41694
|
||||
github.tar, level 0 with dict, old streaming advanced cdict, 38327
|
||||
github.tar, level 1 with dict, old streaming advanced cdict, 38513
|
||||
github.tar, level 3 with dict, old streaming advanced cdict, 38327
|
||||
github.tar, level 4 with dict, old streaming advanced cdict, 38382
|
||||
github.tar, level 5 with dict, old streaming advanced cdict, 39347
|
||||
github.tar, level 6 with dict, old streaming advanced cdict, 38889
|
||||
github.tar, level 7 with dict, old streaming advanced cdict, 37534
|
||||
github.tar, level 9 with dict, old streaming advanced cdict, 36241
|
||||
github.tar, level 13 with dict, old streaming advanced cdict, 35807
|
||||
github.tar, level 16 with dict, old streaming advanced cdict, 38578
|
||||
github.tar, level 19 with dict, old streaming advanced cdict, 32678
|
||||
github.tar, no source size with dict, old streaming advanced cdict, 38076
|
||||
github.tar, no source size with dict, old streaming advanced cdict, 38399
|
||||
|
||||
|
+3
-3
@@ -441,7 +441,7 @@ static int basicUnitTests(U32 seed, double compressibility, int bigTests)
|
||||
size_t const gfhError = ZSTD_getFrameHeader(&fhi, cStart, cSize);
|
||||
if (gfhError!=0) goto _output_error;
|
||||
DISPLAYLEVEL(5, " (windowSize : %u) ", (unsigned)fhi.windowSize);
|
||||
{ size_t const s = ZSTD_estimateDStreamSize(fhi.windowSize)
|
||||
{ size_t const s = ZSTD_estimateDStreamSize((size_t)fhi.windowSize)
|
||||
/* uses ZSTD_initDStream_usingDict() */
|
||||
+ ZSTD_estimateDDictSize(dictSize, ZSTD_dlm_byCopy);
|
||||
if (ZSTD_isError(s)) goto _output_error;
|
||||
@@ -958,7 +958,7 @@ static int basicUnitTests(U32 seed, double compressibility, int bigTests)
|
||||
break;
|
||||
out.size = MIN(out.size + cSize / 4, compressedBufferSize);
|
||||
}
|
||||
CHECK_Z(ZSTD_decompress(decodedBuffer, CNBufferSize, compressedBuffer, cSize));
|
||||
CHECK_Z(ZSTD_decompress(decodedBuffer, CNBufferSize, compressedBuffer, out.pos));
|
||||
DISPLAYLEVEL(3, "OK \n");
|
||||
|
||||
DISPLAYLEVEL(3, "test%3i : ZSTD_compressStream2() ZSTD_c_stableInBuffer modify buffer : ", testNb++);
|
||||
@@ -1551,7 +1551,7 @@ static int basicUnitTests(U32 seed, double compressibility, int bigTests)
|
||||
DISPLAYLEVEL(3, "test%3i : check dictionary FSE tables can represent every code : ", testNb++);
|
||||
{ unsigned const kMaxWindowLog = 24;
|
||||
unsigned value;
|
||||
ZSTD_compressionParameters cParams = ZSTD_getCParams(3, 1U << kMaxWindowLog, 1024);
|
||||
ZSTD_compressionParameters cParams = ZSTD_getCParams(3, 1ULL << kMaxWindowLog, 1024);
|
||||
ZSTD_CDict* cdict;
|
||||
ZSTD_DDict* ddict;
|
||||
SEQ_stream seq = SEQ_initStream(0x87654321);
|
||||
|
||||
Reference in New Issue
Block a user