IOR
Functions | Variables
parse_options.c File Reference
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
#include "utilities.h"
#include "ior.h"
#include "aiori.h"
#include "parse_options.h"
#include "option.h"
Include dependency graph for parse_options.c:

Go to the source code of this file.

Functions

option_helpcreateGlobalOptions (IOR_param_t *params)
 
static void CheckRunSettings (IOR_test_t *tests)
 
void DecodeDirective (char *line, IOR_param_t *params, options_all_t *module_options)
 
void ParseLine (char *line, IOR_param_t *test, options_all_t *module_options)
 
static void decodeDirectiveWrapper (char *line)
 
int contains_only (char *haystack, char *needle)
 
IOR_test_tReadConfigScript (char *scriptName)
 
IOR_test_tParseCommandLine (int argc, char **argv, MPI_Comm com)
 

Variables

static IOR_param_t initialTestParams
 
static IOR_param_tparameters
 
static options_all_tglobal_options
 

Function Documentation

◆ CheckRunSettings()

static void CheckRunSettings ( IOR_test_t tests)
static

◆ contains_only()

int contains_only ( char *  haystack,
char *  needle 
)

Definition at line 303 of file parse_options.c.

Referenced by ReadConfigScript().

Here is the caller graph for this function:

◆ createGlobalOptions()

option_help * createGlobalOptions ( IOR_param_t params)

Definition at line 414 of file parse_options.c.

References aiori_supported_apis(), IOR_param_t::api, IOR_param_t::blockSize, IOR_param_t::buffer_type, IOR_param_t::checkRead, IOR_param_t::checkWrite, IOR_param_t::collective, IOR_param_t::deadlineForStonewalling, decodeDirectiveWrapper(), IOR_param_t::dryRun, IOR_param_t::dualMount, IOR_param_t::filePerProc, IOR_param_t::fsync, IOR_param_t::fsyncPerWrite, IOR_param_t::gpuDirect, IOR_param_t::interTestDelay, IOR_param_t::intraTestBarriers, IOR, IOR_param_t::keepFile, IOR_param_t::keepFileWithError, LAST_OPTION, IOR_param_t::maxTimeDuration, IOR_param_t::memoryPerNodeStr, IOR_param_t::multiFile, NULL, IOR_param_t::numTasks, o, OPTION_FLAG, OPTION_OPTIONAL_ARGUMENT, options, IOR_param_t::outlierThreshold, IOR_param_t::randomOffset, IOR_param_t::randomPrefillBlocksize, IOR_param_t::randomSeed, IOR_param_t::readFile, IOR_param_t::referenceNumber, IOR_param_t::reorderTasks, IOR_param_t::reorderTasksRandom, IOR_param_t::reorderTasksRandomSeed, IOR_param_t::repetitions, safeMalloc(), IOR_param_t::segmentCount, IOR_param_t::setTimeStampSignature, IOR_param_t::singleXferAttempt, IOR_param_t::taskPerNodeOffset, IOR_param_t::testFileName, IOR_param_t::testscripts, IOR_param_t::transferSize, IOR_param_t::uniqueDir, IOR_param_t::useExistingTestFile, IOR_param_t::verbose, IOR_param_t::warningAsErrors, and IOR_param_t::writeFile.

Referenced by ParseCommandLine(), and ReadConfigScript().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ DecodeDirective()

void DecodeDirective ( char *  line,
IOR_param_t params,
options_all_t module_options 
)

Definition at line 83 of file parse_options.c.

References aiori_select(), IOR_param_t::api, IOR_param_t::backend, IOR_param_t::blockSize, IOR_param_t::checkRead, IOR_param_t::checkWrite, IOR_param_t::deadlineForStonewalling, IOR_param_t::debug, IOR_param_t::dualMount, FAIL, IOR_param_t::filePerProc, IOR_param_t::fsync, IOR_param_t::fsyncPerWrite, IOR_param_t::gpuDirect, IOR_param_t::gpuID, IOR_param_t::gpuMemoryFlags, IOR_param_t::interIODelay, IOR_param_t::interTestDelay, IOR_param_t::intraTestBarriers, IOR_param_t::keepFile, IOR_param_t::keepFileWithError, MAX_STR, IOR_param_t::maxTimeDuration, IOR_param_t::memoryPerNode, IOR_param_t::memoryPerTask, MPI_CHECK, IOR_param_t::multiFile, NodeMemoryStringToBytes(), NULL, IOR_param_t::numNodes, IOR_param_t::numTasks, IOR_param_t::numTasksOnNode0, option_parse_key_value(), out_logfile, out_resultfile, IOR_param_t::outlierThreshold, OUTPUT_CSV, OUTPUT_DEFAULT, OUTPUT_JSON, outputFormat, IOR_param_t::platform, IOR_param_t::randomOffset, rank, rc, IOR_param_t::readFile, IOR_param_t::referenceNumber, IOR_param_t::reorderTasks, IOR_param_t::reorderTasksRandom, IOR_param_t::reorderTasksRandomSeed, IOR_param_t::repetitions, IOR_param_t::saveRankDetailsCSV, IOR_param_t::segmentCount, IOR_param_t::setTimeStampSignature, IOR_param_t::singleXferAttempt, IOR_param_t::stoneWallingStatusFile, IOR_param_t::stoneWallingWearOut, IOR_param_t::stoneWallingWearOutIterations, IOR_param_t::storeFileOffset, string_to_bytes(), IOR_param_t::summary_every_test, IOR_param_t::taskPerNodeOffset, IOR_param_t::testFileName, IOR_param_t::transferSize, IOR_param_t::uniqueDir, IOR_param_t::useExistingTestFile, IOR_param_t::verbose, IOR_param_t::warningAsErrors, and IOR_param_t::writeFile.

Referenced by ParseLine().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ decodeDirectiveWrapper()

static void decodeDirectiveWrapper ( char *  line)
static

Definition at line 295 of file parse_options.c.

References ParseLine().

Referenced by createGlobalOptions().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ParseCommandLine()

IOR_test_t* ParseCommandLine ( int  argc,
char **  argv,
MPI_Comm  com 
)

◆ ParseLine()

void ParseLine ( char *  line,
IOR_param_t test,
options_all_t module_options 
)

Definition at line 268 of file parse_options.c.

References DecodeDirective(), NULL, and out_logfile.

Referenced by decodeDirectiveWrapper(), and ReadConfigScript().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ ReadConfigScript()

IOR_test_t* ReadConfigScript ( char *  scriptName)

Definition at line 329 of file parse_options.c.

References airoi_update_module_options(), AllocResults(), contains_only(), createGlobalOptions(), CreateTest(), ERR, MAX_STR, options_all_t::modules, IOR_test_t::next, NULL, option_module::options, IOR_test_t::params, and ParseLine().

Referenced by ParseCommandLine().

Here is the call graph for this function:
Here is the caller graph for this function:

Variable Documentation

◆ global_options

options_all_t* global_options
static

Definition at line 41 of file parse_options.c.

Referenced by airoi_create_all_module_options(), md_workbench_run(), and mdtest_run().

◆ initialTestParams

IOR_param_t initialTestParams
static

Definition at line 35 of file parse_options.c.

Referenced by ParseCommandLine().

◆ parameters

IOR_param_t* parameters
static

Definition at line 40 of file parse_options.c.