Lines Matching refs:benchFn
68 BMK_benchFn_t benchFn; /* the function to benchmark, over the set of blocks */
69 void* benchPayload; /* pass custom parameters to benchFn :
70 * (*benchFn)(srcBuffers[i], srcSizes[i], dstBuffers[i], dstCapacities[i], benchPayload) */
73 BMK_errorFn_t errorFn; /* errorFn will check each return value of benchFn over each block, to determine if it failed or not.
75 * errorFn must return 0 when benchFn was successful, and >= 1 if it detects an error.
78 size_t blockCount; /* number of blocks to operate benchFn on.
81 const void *const * srcBuffers; /* read-only array of buffers to be operated on by benchFn */
83 void *const * dstBuffers; /* array of buffers to be written into by benchFn. This array is not optional, it must be provided even if unused by benchfn. */
85 size_t* blockResults; /* Optional: store the return value of benchFn for each block. Use NULL if this result is not requested. */
90 * This function benchmarks benchFn and initFn, providing a result.
93 * nbLoops: defines number of times benchFn is run over the full set of blocks.
100 * .sumOfReturn : the sum of all return values of benchFn through all of blocks
101 * .nanoSecPerRun : time per run of benchFn + (time for initFn / nbLoops)
106 * params.blockResults contains all return values of `benchFn` over all blocks.
108 * params.blockResults contains return values of `benchFn` over all blocks preceding and including the failed block.
123 /* when benchmark failed, it means one invocation of `benchFn` failed.
124 * The failure was detected by `errorFn`, operating on return values of `benchFn`.