mirror of
https://github.com/facebook/zstd.git
synced 2025-08-01 09:47:01 +03:00
Test DDSS A Little More Thoroughly
This commit is contained in:
@ -2926,7 +2926,7 @@ static int basicUnitTests(U32 const seed, double compressibility)
|
|||||||
{
|
{
|
||||||
ZSTD_CCtx* const cctx = ZSTD_createCCtx();
|
ZSTD_CCtx* const cctx = ZSTD_createCCtx();
|
||||||
ZSTD_DCtx* const dctx = ZSTD_createDCtx();
|
ZSTD_DCtx* const dctx = ZSTD_createDCtx();
|
||||||
size_t dictSize = CNBuffSize > 110 KB ? 110 KB : CNBuffSize;
|
size_t dictSize = CNBuffSize;
|
||||||
void* dict = (void*)malloc(dictSize);
|
void* dict = (void*)malloc(dictSize);
|
||||||
ZSTD_CCtx_params* cctx_params = ZSTD_createCCtxParams();
|
ZSTD_CCtx_params* cctx_params = ZSTD_createCCtxParams();
|
||||||
ZSTD_dictAttachPref_e const attachPrefs[] = {
|
ZSTD_dictAttachPref_e const attachPrefs[] = {
|
||||||
@ -2934,10 +2934,13 @@ static int basicUnitTests(U32 const seed, double compressibility)
|
|||||||
ZSTD_dictForceAttach,
|
ZSTD_dictForceAttach,
|
||||||
ZSTD_dictForceCopy,
|
ZSTD_dictForceCopy,
|
||||||
ZSTD_dictForceLoad,
|
ZSTD_dictForceLoad,
|
||||||
ZSTD_dictForceAttach
|
ZSTD_dictDefaultAttach,
|
||||||
|
ZSTD_dictForceAttach,
|
||||||
|
ZSTD_dictForceCopy,
|
||||||
|
ZSTD_dictForceLoad
|
||||||
};
|
};
|
||||||
int const enableDedicatedDictSearch[] = {0, 0, 0, 0, 1};
|
int const enableDedicatedDictSearch[] = {0, 0, 0, 0, 1, 1, 1, 1};
|
||||||
int const cLevel = 6;
|
int cLevel;
|
||||||
int i;
|
int i;
|
||||||
|
|
||||||
RDG_genBuffer(dict, dictSize, 0.5, 0.5, seed);
|
RDG_genBuffer(dict, dictSize, 0.5, 0.5, seed);
|
||||||
@ -2945,12 +2948,14 @@ static int basicUnitTests(U32 const seed, double compressibility)
|
|||||||
|
|
||||||
CHECK(cctx_params != NULL);
|
CHECK(cctx_params != NULL);
|
||||||
|
|
||||||
for (i = 0; i < 5; ++i) {
|
for (dictSize = CNBuffSize; dictSize; dictSize = dictSize >> 1) {
|
||||||
|
for (cLevel = 4; cLevel < 12; cLevel++) {
|
||||||
|
for (i = 0; i < 8; ++i) {
|
||||||
ZSTD_dictAttachPref_e const attachPref = attachPrefs[i];
|
ZSTD_dictAttachPref_e const attachPref = attachPrefs[i];
|
||||||
int const enableDDS = enableDedicatedDictSearch[i];
|
int const enableDDS = enableDedicatedDictSearch[i];
|
||||||
ZSTD_CDict* cdict;
|
ZSTD_CDict* cdict;
|
||||||
|
|
||||||
DISPLAYLEVEL(5, "\n iter %d ", i);
|
DISPLAYLEVEL(5, "\n dictSize %lu cLevel %d iter %d ", dictSize, cLevel, i);
|
||||||
|
|
||||||
ZSTD_CCtxParams_init(cctx_params, cLevel);
|
ZSTD_CCtxParams_init(cctx_params, cLevel);
|
||||||
CHECK_Z(ZSTD_CCtxParams_setParameter(cctx_params, ZSTD_c_enableDedicatedDictSearch, enableDDS));
|
CHECK_Z(ZSTD_CCtxParams_setParameter(cctx_params, ZSTD_c_enableDedicatedDictSearch, enableDDS));
|
||||||
@ -2965,9 +2970,13 @@ static int basicUnitTests(U32 const seed, double compressibility)
|
|||||||
CHECK_Z(cSize);
|
CHECK_Z(cSize);
|
||||||
CHECK_Z(ZSTD_decompress_usingDict(dctx, decodedBuffer, CNBuffSize, compressedBuffer, cSize, dict, dictSize));
|
CHECK_Z(ZSTD_decompress_usingDict(dctx, decodedBuffer, CNBuffSize, compressedBuffer, cSize, dict, dictSize));
|
||||||
|
|
||||||
|
DISPLAYLEVEL(5, "compressed to %lu bytes ", cSize);
|
||||||
|
|
||||||
CHECK_Z(ZSTD_CCtx_reset(cctx, ZSTD_reset_session_and_parameters));
|
CHECK_Z(ZSTD_CCtx_reset(cctx, ZSTD_reset_session_and_parameters));
|
||||||
ZSTD_freeCDict(cdict);
|
ZSTD_freeCDict(cdict);
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
ZSTD_freeCCtx(cctx);
|
ZSTD_freeCCtx(cctx);
|
||||||
ZSTD_freeDCtx(dctx);
|
ZSTD_freeDCtx(dctx);
|
||||||
|
Reference in New Issue
Block a user