Merge pull request #46 from lidongyang/iops

Add OPs result columns back
master
Glenn K. Lockwood 2018-04-23 13:12:43 -07:00 committed by GitHub
commit 7a371cfeda
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 45 additions and 1 deletions

View File

@ -1690,6 +1690,41 @@ static struct results *bw_values(int reps, IOR_offset_t *agg_file_size, double *
return r;
}
static struct results *ops_values(int reps, IOR_offset_t *agg_file_size,
IOR_offset_t transfer_size,
double *vals)
{
struct results *r;
int i;
r = (struct results *)malloc(sizeof(struct results)
+ (reps * sizeof(double)));
if (r == NULL)
ERR("malloc failed");
r->val = (double *)&r[1];
for (i = 0; i < reps; i++) {
r->val[i] = (double)agg_file_size[i] / transfer_size / vals[i];
if (i == 0) {
r->min = r->val[i];
r->max = r->val[i];
r->sum = 0.0;
}
r->min = MIN(r->min, r->val[i]);
r->max = MAX(r->max, r->val[i]);
r->sum += r->val[i];
}
r->mean = r->sum / reps;
r->var = 0.0;
for (i = 0; i < reps; i++) {
r->var += pow((r->mean - r->val[i]), 2);
}
r->var = r->var / reps;
r->sd = sqrt(r->var);
return r;
}
/*
* Summarize results
*
@ -1700,6 +1735,7 @@ static void PrintLongSummaryOneOperation(IOR_test_t *test, double *times, char *
IOR_param_t *params = &test->params;
IOR_results_t *results = test->results;
struct results *bw;
struct results *ops;
int reps;
if (rank != 0 || verbose < VERBOSE_0)
@ -1708,12 +1744,18 @@ static void PrintLongSummaryOneOperation(IOR_test_t *test, double *times, char *
reps = params->repetitions;
bw = bw_values(reps, results->aggFileSizeForBW, times);
ops = ops_values(reps, results->aggFileSizeForBW,
params->transferSize, times);
fprintf(stdout, "%-9s ", operation);
fprintf(stdout, "%10.2f ", bw->max / MEBIBYTE);
fprintf(stdout, "%10.2f ", bw->min / MEBIBYTE);
fprintf(stdout, "%10.2f ", bw->mean / MEBIBYTE);
fprintf(stdout, "%10.2f ", bw->sd / MEBIBYTE);
fprintf(stdout, "%10.2f ", ops->max);
fprintf(stdout, "%10.2f ", ops->min);
fprintf(stdout, "%10.2f ", ops->mean);
fprintf(stdout, "%10.2f ", ops->sd);
fprintf(stdout, "%10.5f ",
mean_of_array_of_doubles(times, reps));
fprintf(stdout, "%d ", params->id);
@ -1735,6 +1777,7 @@ static void PrintLongSummaryOneOperation(IOR_test_t *test, double *times, char *
fflush(stdout);
free(bw);
free(ops);
}
static void PrintLongSummaryOneTest(IOR_test_t *test)
@ -1754,8 +1797,9 @@ static void PrintLongSummaryHeader()
return;
fprintf(stdout, "\n");
fprintf(stdout, "%-9s %10s %10s %10s %10s %10s",
fprintf(stdout, "%-9s %10s %10s %10s %10s %10s %10s %10s %10s %10s",
"Operation", "Max(MiB)", "Min(MiB)", "Mean(MiB)", "StdDev",
"Max(OPs)", "Min(OPs)", "Mean(OPs)", "StdDev",
"Mean(s)");
fprintf(stdout, " Test# #Tasks tPN reps fPP reord reordoff reordrand seed"
" segcnt blksiz xsize aggsize API RefNum\n");