After parsing the results file, Getstats runs several default
transformations as described in Default Function Library. These
transformations essentially combine the results from several tests, and produce
the derived quantities (e.g., Wait time). If we want to see these raw values
we can use the --dump transform. The following output is produced by
getstats --dump ext2:1.res
:
epoch elapsed user sys io cpu 1 6.138 1.700 2.720 1.718 72.007 2 6.026 1.820 2.640 1.566 74.015 3 5.855 1.590 2.800 1.465 74.981 4 5.983 1.680 2.750 1.553 74.045 5 6.063 1.730 2.700 1.633 73.071 6 6.180 1.680 2.790 1.710 72.331 7 6.043 1.510 2.880 1.653 72.645 8 6.089 1.680 2.770 1.639 73.086 9 6.063 1.630 2.820 1.613 73.396 10 6.113 1.730 2.710 1.673 72.637 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
As we can see the tabular report is still printed. This is because the
standard transforms are being executed before and after the
--dump transformation. To solve this problem, we can simply
exit after the dump by adding --eval "exit(0);". The complete
command getstats --dump --eval "exit(0);" ext2:1.res
produces:
epoch elapsed user sys io cpu 1 6.138 1.700 2.720 1.718 72.007 2 6.026 1.820 2.640 1.566 74.015 3 5.855 1.590 2.800 1.465 74.981 4 5.983 1.680 2.750 1.553 74.045 5 6.063 1.730 2.700 1.633 73.071 6 6.180 1.680 2.790 1.710 72.331 7 6.043 1.510 2.880 1.653 72.645 8 6.089 1.680 2.770 1.639 73.086 9 6.063 1.630 2.820 1.613 73.396 10 6.113 1.730 2.710 1.673 72.637
This output, however, is post processed. To produce raw output, we need
to disable the standard transforms by passing
--nostdtransforms. The command getstats
--nostdtransforms --dump ext2:1.res
produces the following table (note
that we do not need to suppress the default tabular report, as
--nostdtransforms already suppresses it):
thread epoch command status elapsed user sys 1 1 postmark /tmp/postmark_config-30126 0 6.138 1.700 2.720 1 2 postmark /tmp/postmark_config-30312 0 6.026 1.820 2.640 1 3 postmark /tmp/postmark_config-30498 0 5.855 1.590 2.800 1 4 postmark /tmp/postmark_config-30684 0 5.983 1.680 2.750 1 5 postmark /tmp/postmark_config-30870 0 6.063 1.730 2.700 1 6 postmark /tmp/postmark_config-31056 0 6.180 1.680 2.790 1 7 postmark /tmp/postmark_config-31242 0 6.043 1.510 2.880 1 8 postmark /tmp/postmark_config-31428 0 6.089 1.680 2.770 1 9 postmark /tmp/postmark_config-31614 0 6.063 1.630 2.820 1 10 postmark /tmp/postmark_config-31800 0 6.113 1.730 2.710
To produce CSV files, which are suitable for use with other programs,
you can replace --dump with --csv. For example, getstats
--nostdtransforms --csv ext2:1.res
produces
"thread","epoch","command","status","elapsed","user","sys" "1","1","postmark /tmp/postmark_config-30126","0","6.138273","1.700000","2.720000" "1","2","postmark /tmp/postmark_config-30312","0","6.025781","1.820000","2.640000" "1","3","postmark /tmp/postmark_config-30498","0","5.854844","1.590000","2.800000" "1","4","postmark /tmp/postmark_config-30684","0","5.982848","1.680000","2.750000" "1","5","postmark /tmp/postmark_config-30870","0","6.062588","1.730000","2.700000" "1","6","postmark /tmp/postmark_config-31056","0","6.179898","1.680000","2.790000" "1","7","postmark /tmp/postmark_config-31242","0","6.043082","1.510000","2.880000" "1","8","postmark /tmp/postmark_config-31428","0","6.088717","1.680000","2.770000" "1","9","postmark /tmp/postmark_config-31614","0","6.062965","1.630000","2.820000" "1","10","postmark /tmp/postmark_config-31800","0","6.112608","1.730000","2.710000"