Stonewalling wear-out only with long options.

master
Julian M. Kunkel 2017-10-21 11:59:09 +02:00
parent 96e75cc832
commit 072eb452fd
2 changed files with 6 additions and 10 deletions

View File

@ -169,11 +169,11 @@ int main(int argc, char **argv)
sleep(5);
printf("\trank %d: awake.\n", rank);
}
TestIoSys(tptr);
if(rank == 0 && tptr->params.stoneWallingWearOut){
fprintf(stdout, "Pairs deadlineForStonewallingaccessed: %lld\n", (long long) tptr->results->pairs_accessed);
}
TestIoSys(tptr);
}
if (verbose < 0)
@ -753,6 +753,8 @@ static void DisplayUsage(char **argv)
" -C reorderTasks -- changes task ordering to n+1 ordering for readback",
" -d N interTestDelay -- delay between reps in seconds",
" -D N deadlineForStonewalling -- seconds before stopping write or read phase",
" -O stoneWallingWearOut=1 -- once the stonewalling timout is over, all process finish to access the amount of data",
" -O stoneWallingWearOutIterations=N -- stop after processing this number of iterations, needed for reading data back written with stoneWallingWearOut",
" -e fsync -- perform fsync upon POSIX write close",
" -E useExistingTestFile -- do not remove test file before write access",
" -f S scriptFile -- test script name",
@ -792,8 +794,6 @@ static void DisplayUsage(char **argv)
" -W checkWrite -- check read after write",
" -x singleXferAttempt -- do not retry transfer if incomplete",
" -X N reorderTasksRandomSeed -- random seed for -Z option",
" -y stoneWallingWearOut -- once the stonewalling timout is over, all process finish to access the amount of data",
" -1 stoneWallingWearOutIterations stop after processing this number of iterations, needed for reading data back written with -y",
" -Y fsyncPerWrite -- perform fsync after each POSIX write",
" -z randomOffset -- access is to random, not sequential, offsets within a file",
" -Z reorderTasksRandom -- changes task ordering to random ordering for readback",

View File

@ -171,6 +171,8 @@ void DecodeDirective(char *line, IOR_param_t *params)
params->deadlineForStonewalling = atoi(value);
} else if (strcasecmp(option, "stoneWallingWearOut") == 0) {
params->stoneWallingWearOut = atoi(value);
} else if (strcasecmp(option, "stoneWallingWearOutIterations") == 0) {
params->stoneWallingWearOutIterations = atoi(value);
} else if (strcasecmp(option, "maxtimeduration") == 0) {
params->maxTimeDuration = atoi(value);
} else if (strcasecmp(option, "outlierthreshold") == 0) {
@ -612,12 +614,6 @@ IOR_test_t *ParseCommandLine(int argc, char **argv)
case 'X':
initialTestParams.reorderTasksRandomSeed = atoi(optarg);
break;
case '1':
initialTestParams.stoneWallingWearOutIterations = atoi(optarg);
break;
case 'y':
initialTestParams.stoneWallingWearOut = TRUE;
break;
case 'Y':
initialTestParams.fsyncPerWrite = TRUE;
break;