offset = 1-offset;
if (offset != 0)
{
+ #if 1
size_t temp = seqState->prevOffset[offset];
if (offset != 1) {
if (offset == 3) seqState->prevOffset[3] = seqState->prevOffset[2];
seqState->prevOffset[2] = seqState->prevOffset[1];
}
offset = temp;
+ #else
+ offset = seqState->prevOffset[1];
+ #endif
seqState->prevOffset[1] = seqState->prevOffset[0];
seqState->prevOffset[0] = offset;
}
} else {
offset -= ZSTD_REP_MOVE;
#if 0
- seqState->prevOffset[3] = seqState->prevOffset[2];
- seqState->prevOffset[2] = seqState->prevOffset[1];
+ // seqState->prevOffset[3] = seqState->prevOffset[2];
+ // seqState->prevOffset[2] = seqState->prevOffset[1];
seqState->prevOffset[1] = seqState->prevOffset[0];
seqState->prevOffset[0] = offset;
#else
/* *************************************
* Includes
***************************************/
+#if defined(WIN32) || defined(_WIN32) || defined(__WIN32__) || defined(WIN64) || defined(_WIN64)
+ #define WINDOWS
+#endif
#include <stdlib.h> /* malloc, free */
#include <string.h> /* memset */
#include <stdio.h> /* fprintf, fopen, ftello64 */
#include <sys/types.h> /* stat64 */
#include <sys/stat.h> /* stat64 */
-#include <time.h> /* clock_t, clock, CLOCKS_PER_SEC */
-
+#include <time.h> /* clock_t, clock, CLOCKS_PER_SEC */
+#ifdef WINDOWS
+ #define mili_sleep(mili) Sleep(mili)
+#else
+ #define mili_sleep(mili) usleep(mili*1000)
+ #include <sys/resource.h> /* setpriority */
+#endif
+
/* sleep : posix - windows - others */
#if !defined(_WIN32) && (defined(__unix__) || defined(__unix) || (defined(__APPLE__) && defined(__MACH__)))
# include <unistd.h>
memset(compressedBuffer, 0xE5, maxCompressedSize); /* warm up and erase result buffer */
nbLoops = 0;
+ mili_sleep(1); // give processor to other processes
clockStart = clock();
while (clock() == clockStart);
clockStart = clock();
memset(resultBuffer, 0xD6, srcSize); /* warm result buffer */
nbLoops = 0;
+ mili_sleep(1); // give processor to other processes
clockStart = clock();
while (clock() == clockStart);
clockStart = clock();
{
benchResult_t result, total;
int l;
+#ifdef WINDOWS
+ SetPriorityClass(GetCurrentProcess(), REALTIME_PRIORITY_CLASS);
+#else
+ setpriority(PRIO_PROCESS, 0, -20);
+#endif
const char* pch = strrchr(displayName, '\\'); /* Windows */
if (!pch) pch = strrchr(displayName, '/'); /* Linux */