code refactoring and adding some print statements for debugging
This commit is contained in:
parent
07cfc975bb
commit
aa95bc0a5f
@ -1315,7 +1315,6 @@ static int generateCorpus(U32 seed, unsigned numFiles, const char* const path,
|
|||||||
static int generateCorpusWithDict(U32 seed, unsigned numFiles, const char* const path,
|
static int generateCorpusWithDict(U32 seed, unsigned numFiles, const char* const path,
|
||||||
const char* const origPath, const size_t dictSize)
|
const char* const origPath, const size_t dictSize)
|
||||||
{
|
{
|
||||||
DISPLAY("in generateCorpusWithDict()\n");
|
|
||||||
char outPath[MAX_PATH];
|
char outPath[MAX_PATH];
|
||||||
BYTE* dictContent;
|
BYTE* dictContent;
|
||||||
BYTE* fullDict;
|
BYTE* fullDict;
|
||||||
@ -1327,19 +1326,21 @@ static int generateCorpusWithDict(U32 seed, unsigned numFiles, const char* const
|
|||||||
DISPLAY("Error: path too long\n");
|
DISPLAY("Error: path too long\n");
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
DISPLAY("generating the dictionary randomly\n");
|
|
||||||
/* Generate the dictionary randomly first */
|
/* Generate the dictionary randomly first */
|
||||||
dictContent = malloc(dictSize-400);
|
dictContent = malloc(dictSize-400);
|
||||||
dictID = RAND(&seed);
|
dictID = RAND(&seed);
|
||||||
DISPLAY("this is the dictID that is being stored: %u\n", dictID);
|
|
||||||
fullDict = malloc(dictSize);
|
fullDict = malloc(dictSize);
|
||||||
RAND_buffer(&seed, dictContent, dictSize-40);
|
RAND_buffer(&seed, dictContent, dictSize-40);
|
||||||
{
|
{
|
||||||
size_t dictWriteSize = 0;
|
size_t dictWriteSize = 0;
|
||||||
|
|
||||||
/* create random samples */
|
/* create random samples */
|
||||||
unsigned numSamples = RAND(&seed) % 50;
|
unsigned numSamples = RAND(&seed) % 50;
|
||||||
|
BYTE* samples;
|
||||||
unsigned i = 0;
|
unsigned i = 0;
|
||||||
size_t* sampleSizes = malloc(numSamples*sizeof(size_t));
|
size_t* sampleSizes = malloc(numSamples*sizeof(size_t));
|
||||||
|
{
|
||||||
size_t* curr = sampleSizes;
|
size_t* curr = sampleSizes;
|
||||||
size_t totalSize = 0;
|
size_t totalSize = 0;
|
||||||
while(i++ < numSamples){
|
while(i++ < numSamples){
|
||||||
@ -1347,22 +1348,29 @@ static int generateCorpusWithDict(U32 seed, unsigned numFiles, const char* const
|
|||||||
totalSize += *curr;
|
totalSize += *curr;
|
||||||
curr++;
|
curr++;
|
||||||
}
|
}
|
||||||
ZDICT_params_t zdictParams;
|
samples = malloc(totalSize);
|
||||||
BYTE* samples = malloc(totalSize);
|
|
||||||
RAND_buffer(&seed, samples, totalSize);
|
RAND_buffer(&seed, samples, totalSize);
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
/* set dictionary params */
|
/* set dictionary params */
|
||||||
memset(&zdictParams, 0, sizeof(ZDICT_params_t));
|
ZDICT_params_t zdictParams;
|
||||||
|
memset(&zdictParams, 0, sizeof(zdictParams));
|
||||||
zdictParams.dictID = dictID;
|
zdictParams.dictID = dictID;
|
||||||
|
zdictParams.notificationLevel = 1;
|
||||||
|
|
||||||
/* finalize dictionary with random samples */
|
/* finalize dictionary with random samples */
|
||||||
dictWriteSize = ZDICT_finalizeDictionary(fullDict, dictSize,
|
dictWriteSize = ZDICT_finalizeDictionary(fullDict, dictSize,
|
||||||
dictContent, dictSize-400,
|
dictContent, dictSize-400,
|
||||||
samples, sampleSizes, numSamples,
|
samples, sampleSizes, numSamples,
|
||||||
zdictParams);
|
zdictParams);
|
||||||
DISPLAY("total size: %zu %zu\n", totalSize, dictSize);
|
}
|
||||||
|
|
||||||
if(dictWriteSize != dictSize && ZDICT_isError(dictWriteSize)){
|
if(dictWriteSize != dictSize && ZDICT_isError(dictWriteSize)){
|
||||||
DISPLAY("Could not finalize dictionary: %s\n", ZDICT_getErrorName(dictWriteSize));
|
DISPLAY("Could not finalize dictionary: %s\n", ZDICT_getErrorName(dictWriteSize));
|
||||||
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* write out dictionary */
|
/* write out dictionary */
|
||||||
if(snprintf(outPath, MAX_PATH, "%s/dictionary", path) + 1 > MAX_PATH){
|
if(snprintf(outPath, MAX_PATH, "%s/dictionary", path) + 1 > MAX_PATH){
|
||||||
DISPLAY("Error: dictionary path too long\n");
|
DISPLAY("Error: dictionary path too long\n");
|
||||||
@ -1373,6 +1381,7 @@ static int generateCorpusWithDict(U32 seed, unsigned numFiles, const char* const
|
|||||||
|
|
||||||
DISPLAY("generating compressed files\n");
|
DISPLAY("generating compressed files\n");
|
||||||
decompressedPtr = malloc(MAX_DECOMPRESSED_SIZE);
|
decompressedPtr = malloc(MAX_DECOMPRESSED_SIZE);
|
||||||
|
|
||||||
/* generate random compressed/decompressed files */
|
/* generate random compressed/decompressed files */
|
||||||
for (fnum = 0; fnum < numFiles; fnum++) {
|
for (fnum = 0; fnum < numFiles; fnum++) {
|
||||||
frame_t fr;
|
frame_t fr;
|
||||||
@ -1403,6 +1412,10 @@ static int generateCorpusWithDict(U32 seed, unsigned numFiles, const char* const
|
|||||||
fr.srcStart, (BYTE*)fr.src - (BYTE*)fr.srcStart,
|
fr.srcStart, (BYTE*)fr.src - (BYTE*)fr.srcStart,
|
||||||
fullDict, dictSize);
|
fullDict, dictSize);
|
||||||
|
|
||||||
|
if(ZSTD_isError(returnValue)){
|
||||||
|
DISPLAY("Error: %s", ZSTD_getErrorName(returnValue));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
DISPLAY("end of function\n");
|
DISPLAY("end of function\n");
|
||||||
return 0;
|
return 0;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user