IOR
Data Structures | Functions
ior-internal.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  results
 

Functions

void PrintHeader (int argc, char **argv)
 
void ShowTestStart (IOR_param_t *params)
 
void ShowTestEnd (IOR_test_t *tptr)
 
void ShowSetup (IOR_param_t *params)
 
void PrintRepeatEnd ()
 
void PrintRepeatStart ()
 
void PrintShortSummary (IOR_test_t *test)
 
void PrintLongSummaryAllTests (IOR_test_t *tests_head)
 
void PrintLongSummaryHeader ()
 
void PrintLongSummaryOneTest (IOR_test_t *test)
 
void GetTestFileName (char *, IOR_param_t *)
 
void PrintRemoveTiming (double start, double finish, int rep)
 
void PrintReducedResult (IOR_test_t *test, int access, double bw, double iops, double latency, double *diff_subset, double totalTime, int rep)
 
void PrintTestEnds ()
 
void PrintTableHeader ()
 
IOR_offset_tGetOffsetArrayRandom (IOR_param_t *test, int pretendRank, IOR_offset_t *out_count)
 

Function Documentation

◆ GetOffsetArrayRandom()

IOR_offset_t* GetOffsetArrayRandom ( IOR_param_t test,
int  pretendRank,
IOR_offset_t out_count 
)

Returns a precomputed array of IOR_offset_t for the inner benchmark loop. They get created sequentially and mixed up in the end. It should be noted that as the seeds get synchronised across all processes if not FilePerProcess is set every process computes the same random order. For a shared file all transfers get randomly assigned to ranks. The processes can also have differen't numbers of transfers. This might lead to a bigger diversion in accesse as it dose with filePerProc. This is expected but should be mined.

Parameters
testIOR_param_t for getting transferSize, blocksize and SegmentCount
pretendRankint pretended Rank for shifting the offsets correctly
Returns
IOR_offset_t

Definition at line 1679 of file ior.c.

References IOR_param_t::blockSize, IOR_param_t::filePerProc, MPI_CHECK, NULL, IOR_param_t::numTasks, IOR_param_t::randomSeed, rank, safeMalloc(), IOR_param_t::testComm, and IOR_param_t::transferSize.

Referenced by WriteOrRead().

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

◆ GetTestFileName()

void GetTestFileName ( char *  ,
IOR_param_t  
)

◆ PrintHeader()

void PrintHeader ( int  argc,
char **  argv 
)

Definition at line 269 of file ior-output.c.

References CurrentTimeString(), environ, EWARN, NULL, out_logfile, out_resultfile, OUTPUT_CSV, OUTPUT_DEFAULT, outputFormat, PrintArrayNamedStart(), PrintKeyVal(), PrintKeyValEnd(), PrintKeyValStart(), PrintStartSection(), rank, verbose, VERBOSE_2, and VERBOSE_3.

Referenced by ior_main(), and ior_run().

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

◆ PrintLongSummaryAllTests()

void PrintLongSummaryAllTests ( IOR_test_t tests_head)

Definition at line 661 of file ior-output.c.

References IOR_test_t::next, NULL, out_resultfile, OUTPUT_DEFAULT, OUTPUT_JSON, outputFormat, PrintArrayEnd(), PrintLongSummaryHeader(), PrintLongSummaryOneTest(), PrintNamedArrayStart(), rank, verbose, and VERBOSE_0.

Referenced by ior_main(), and ior_run().

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

◆ PrintLongSummaryHeader()

void PrintLongSummaryHeader ( )

Definition at line 642 of file ior-output.c.

References out_resultfile, OUTPUT_DEFAULT, outputFormat, rank, verbose, and VERBOSE_0.

Referenced by PrintLongSummaryAllTests(), and TestIoSys().

Here is the caller graph for this function:

◆ PrintLongSummaryOneTest()

void PrintLongSummaryOneTest ( IOR_test_t test)

Definition at line 632 of file ior-output.c.

References IOR_test_t::params, PrintLongSummaryOneOperation(), READ, IOR_param_t::readFile, WRITE, and IOR_param_t::writeFile.

Referenced by PrintLongSummaryAllTests(), and TestIoSys().

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

◆ PrintReducedResult()

void PrintReducedResult ( IOR_test_t test,
int  access,
double  bw,
double  iops,
double  latency,
double *  diff_subset,
double  totalTime,
int  rep 
)

Definition at line 225 of file ior-output.c.

References IOR_param_t::blockSize, KIBIBYTE, MEBIBYTE, out_resultfile, OUTPUT_CSV, OUTPUT_DEFAULT, OUTPUT_JSON, outputFormat, IOR_test_t::params, PPDouble(), PrintEndSection(), PrintKeyVal(), PrintKeyValDouble(), PrintStartSection(), IOR_param_t::transferSize, and WRITE.

Referenced by ReduceIterResults().

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

◆ PrintRemoveTiming()

void PrintRemoveTiming ( double  start,
double  finish,
int  rep 
)

Definition at line 732 of file ior-output.c.

References out_resultfile, OUTPUT_DEFAULT, OUTPUT_JSON, outputFormat, PPDouble(), PrintEndSection(), PrintKeyVal(), PrintKeyValDouble(), PrintStartSection(), rank, verbose, and VERBOSE_0.

Referenced by TestIoSys().

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

◆ PrintRepeatEnd()

void PrintRepeatEnd ( )

Definition at line 197 of file ior-output.c.

References PrintArrayEnd(), and rank.

Referenced by TestIoSys().

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

◆ PrintRepeatStart()

void PrintRepeatStart ( )

Definition at line 203 of file ior-output.c.

References OUTPUT_DEFAULT, outputFormat, PrintArrayStart(), and rank.

Here is the call graph for this function:

◆ PrintShortSummary()

void PrintShortSummary ( IOR_test_t test)

◆ PrintTableHeader()

void PrintTableHeader ( )

Definition at line 18 of file ior-output.c.

References out_resultfile, OUTPUT_CSV, OUTPUT_DEFAULT, and outputFormat.

Referenced by TestIoSys().

Here is the caller graph for this function:

◆ PrintTestEnds()

void PrintTestEnds ( )

Definition at line 212 of file ior-output.c.

References CurrentTimeString(), OUTPUT_CSV, outputFormat, PrintEndSection(), PrintKeyVal(), rank, verbose, and VERBOSE_0.

Referenced by ior_main(), and ior_run().

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

◆ ShowSetup()

void ShowSetup ( IOR_param_t params)

◆ ShowTestEnd()

void ShowTestEnd ( IOR_test_t tptr)

Definition at line 394 of file ior-output.c.

References out_logfile, IOR_point_t::pairs_accessed, IOR_test_t::params, PrintEndSection(), rank, IOR_test_t::results, IOR_param_t::stoneWallingStatusFile, IOR_param_t::stoneWallingWearOut, StoreStoneWallingIterations(), and IOR_results_t::write.

Referenced by ior_main(), and ior_run().

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

◆ ShowTestStart()

void ShowTestStart ( IOR_param_t params)

Definition at line 323 of file ior-output.c.

References IOR_param_t::api, IOR_param_t::backend, IOR_param_t::backend_options, IOR_param_t::blockSize, IOR_param_t::checkRead, IOR_param_t::checkWrite, IOR_param_t::collective, CurrentTimeString(), IOR_param_t::dataPacketType, IOR_param_t::deadlineForStonewalling, IOR_param_t::dryRun, IOR_param_t::filePerProc, IOR_param_t::fsync, IOR_param_t::fsyncPerWrite, GetTestFileName(), IOR_param_t::id, IOR_param_t::interTestDelay, IOR_param_t::keepFile, IOR_param_t::keepFileWithError, MAX_PATHLEN, IOR_param_t::maxTimeDuration, IOR_param_t::memoryPerNode, IOR_param_t::memoryPerTask, IOR_param_t::multiFile, IOR_param_t::numNodes, IOR_param_t::numTasksOnNode0, IOR_param_t::options, out_resultfile, IOR_param_t::outlierThreshold, OUTPUT_CSV, OUTPUT_JSON, outputFormat, IOR_param_t::platform, PrintEndSection(), PrintKeyVal(), PrintKeyValInt(), PrintNamedSectionStart(), PrintStartSection(), IOR_param_t::randomOffset, 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::segmentCount, IOR_param_t::setTimeStampSignature, ShowFileSystemSize(), IOR_param_t::singleXferAttempt, IOR_param_t::stoneWallingWearOut, IOR_param_t::storeFileOffset, IOR_param_t::testFileName, IOR_param_t::transferSize, IOR_param_t::uniqueDir, IOR_param_t::useExistingTestFile, verbose, VERBOSE_3, IOR_param_t::warningAsErrors, and IOR_param_t::writeFile.

Referenced by test_initialize().

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