The simplest form of invocation is just: getstats file, where
file is a results, CSV, or GNU time file. For example, the
command getstats ext2:1.res produces the following tabular
report:
ext2:1.res: High z-score of 2.21853230276562 for elapsed in epoch 3.
ext2:1.res: High z-score of 2.03783855068 for io in epoch 3.
ext2:1.res
NAME COUNT MEAN MEDIAN LOW HIGH MIN MAX SDEV% HW%
Elapsed 10 6.055 6.063 5.991 6.120 5.855 6.180 1.491 1.067
System 10 2.758 2.760 2.709 2.807 2.640 2.880 2.499 1.788
User 10 1.675 1.680 1.615 1.735 1.510 1.820 5.044 3.609
Wait 10 1.622 1.636 1.567 1.677 1.465 1.718 4.759 3.404
CPU% 10 73.221 73.079 72.572 73.871 72.007 74.981 1.240 0.887
In this report, we see that elapsed time had a z-score of 2.2 in the third
iteration (i.e., the value was 2.2 standard deviations away from the mean). We
also see that I/O time was 2.0 standard deviations away from the mean. Because
this is only a single test, and is not that far away, we can still analyze the
results without much concern.
We then see that there were ten values for Elapsed, System, and User time. Two
additional quantities are reported: Wait, which is the Elapsed time less CPU
time used (i.e. Wait = Elapsed - (System + User)); and CPU utilization.
We also see the mean and median values. The LOW and HIGH columns
are used to create error bars with Graphit (See Graphit). The MIN
and MAX columns are the minimum and maximum values.
The last two columns are the standard deviation and the half-width of a 95%
confidence interval, presented as a percentage of the mean.
The second most common usage of Getstats is probably to compare two
results files and print out the percentage overhead for each measured
quantity. Simply add more files on the command line, and each
subsequent one is compared with the first file. For example,
getstats ext2:1.res ext2:2.res ext2:4.res produces similar
warnings, and three tables, the second two of which have an overhead
column.
ext2:1.res: High z-score of 2.21853230276562 for elapsed in epoch 3.
ext2:1.res: High z-score of 2.03783855068 for io in epoch 3.
ext2:2.res: High z-score of 2.02151683729612 for io in epoch 9.
ext2:2.res: High z-score of 2.04675213832333 for cpu in epoch 9.
ext2:4.res: High z-score of 2.67440053238888 for elapsed in epoch 17.
ext2:4.res: High z-score of 3.49505543943413 for elapsed in epoch 18.
ext2:4.res: High z-score of 2.08010266128444 for user in epoch 24.
ext2:4.res: High z-score of 2.07085419644225 for sys in epoch 7.
ext2:4.res: High z-score of 2.7647669231535 for io in epoch 17.
ext2:4.res: High z-score of 3.4658463687201 for io in epoch 18.
ext2:4.res: High z-score of 2.78135167661708 for cpu in epoch 17.
ext2:4.res: High z-score of 3.57552849516685 for cpu in epoch 18.
ext2:1.res
NAME COUNT MEAN MEDIAN LOW HIGH MIN MAX SDEV% HW%
Elapsed 10 6.055 6.063 5.991 6.120 5.855 6.180 1.491 1.067
System 10 2.758 2.760 2.709 2.807 2.640 2.880 2.499 1.788
User 10 1.675 1.680 1.615 1.735 1.510 1.820 5.044 3.609
Wait 10 1.622 1.636 1.567 1.677 1.465 1.718 4.759 3.404
CPU% 10 73.221 73.079 72.572 73.871 72.007 74.981 1.240 0.887
ext2:2.res
NAME COUNT MEAN MEDIAN LOW HIGH MIN MAX SDEV% HW% O/H
Elapsed 11 4.904 4.966 4.793 5.015 4.579 5.042 3.377 2.269 -19.012
System 11 2.524 2.520 2.478 2.569 2.410 2.630 2.695 1.810 -8.498
User 11 0.811 0.810 0.774 0.848 0.740 0.910 6.720 4.514 -51.588
Wait 11 1.569 1.616 1.453 1.686 1.219 1.748 11.057 7.428 -3.253
CPU% 11 68.075 67.141 66.332 69.818 65.164 73.385 3.811 2.560 -7.029
ext2:4.res
NAME COUNT MEAN MEDIAN LOW HIGH MIN MAX SDEV% HW% O/H
Elapsed 31 4.300 4.318 4.230 4.369 3.636 4.513 4.413 1.619 -28.993
System 31 2.360 2.350 2.333 2.387 2.220 2.510 3.069 1.126 -14.431
User 31 0.502 0.470 0.476 0.528 0.410 0.650 14.141 5.187 -70.014
Wait 31 1.437 1.472 1.366 1.508 0.766 1.667 13.467 4.940 -11.396
CPU% 31 66.708 65.822 65.455 67.961 62.851 78.923 5.121 1.879 -8.895
When running Getstats, you may want to skip the leading warnings,
because you are impatient and don't want to wait for them to complete
(e.g., if you've already looked at them), or you simply don't want the
output (e.g., if you are using the output in an automated Graphit
script). To disable warnings, simply add --set warn=0 to the
command line. The command getstats --set warn=0
samples/ext2:1.res produces the tabular report alone, as follows:
ext2:1.res
NAME COUNT MEAN MEDIAN LOW HIGH MIN MAX SDEV% HW%
Elapsed 10 6.055 6.063 5.991 6.120 5.855 6.180 1.491 1.067
System 10 2.758 2.760 2.709 2.807 2.640 2.880 2.499 1.788
User 10 1.675 1.680 1.615 1.735 1.510 1.820 5.044 3.609
Wait 10 1.622 1.636 1.567 1.677 1.465 1.718 4.759 3.404
CPU% 10 73.221 73.079 72.572 73.871 72.007 74.981 1.240 0.887
The --set option, is actually rather generic. It can be used
to set any Getstats internal variable. You can also turn off the
overhead column, with --set overhead=0. For example,
getstats --set overhead=0 --set warn=0 ext2:1.res ext2:2.res
produces the following:
ext2:1.res
NAME COUNT MEAN MEDIAN LOW HIGH MIN MAX SDEV% HW%
Elapsed 10 6.055 6.063 5.991 6.120 5.855 6.180 1.491 1.067
System 10 2.758 2.760 2.709 2.807 2.640 2.880 2.499 1.788
User 10 1.675 1.680 1.615 1.735 1.510 1.820 5.044 3.609
Wait 10 1.622 1.636 1.567 1.677 1.465 1.718 4.759 3.404
CPU% 10 73.221 73.079 72.572 73.871 72.007 74.981 1.240 0.887
ext2:2.res
NAME COUNT MEAN MEDIAN LOW HIGH MIN MAX SDEV% HW%
Elapsed 11 4.904 4.966 4.793 5.015 4.579 5.042 3.377 2.269
System 11 2.524 2.520 2.478 2.569 2.410 2.630 2.695 1.810
User 11 0.811 0.810 0.774 0.848 0.740 0.910 6.720 4.514
Wait 11 1.569 1.616 1.453 1.686 1.219 1.748 11.057 7.428
CPU% 11 68.075 67.141 66.332 69.818 65.164 73.385 3.811 2.560
If you want to adjust the confidence interval, you also use --set. If you wanted tighter confidence intervals, you could use getstats --set confidencelevel=99 ext2:1.res, and the output would change as follows:
ext2:1.res: High z-score of 2.21853230276562 for elapsed in epoch 3.
ext2:1.res: High z-score of 2.03783855068 for io in epoch 3.
ext2:1.res
NAME COUNT MEAN MEDIAN LOW HIGH MIN MAX SDEV% HW%
Elapsed 10 6.055 6.063 5.962 6.148 5.855 6.180 1.491 1.532
System 10 2.758 2.760 2.687 2.829 2.640 2.880 2.499 2.568
User 10 1.675 1.680 1.588 1.762 1.510 1.820 5.044 5.184
Wait 10 1.622 1.636 1.543 1.701 1.465 1.718 4.759 4.891
CPU% 10 73.221 73.079 72.289 74.154 72.007 74.981 1.240 1.274
There are several other variables, which are described within the transform that they control.