std.benchmark ready for review. Manager sought after

Famous none at none.net
Sun Apr 15 06:08:04 PDT 2012


Instead of the originally proposed layout

================================================================
Benchmark                               relative ns/iter  iter/s
================================================================
---[ module_one ]-----------------------------------------------
file write                                        140.2K    7.1K
file read                                 517.8%   27.1K   36.9K
array creation                             1.2Kx  116.0     8.6M
================================================================

I would like to see something more similar to the following:

================================================================
Benchmark                                Time    Performance
                                                 ---------------
name                                     s/iter  iter/s  factor
-----------------------[ module_one ]--- ------- ------- -------
file write                               140.20µ   7.13k
file read                                 27.10µ  36.90k   5.17
array creation                           116.00n   8.62M   1.21k
================================================================

Transition to the new layout can be achieved as follows:

         * Consider layout guidelines given in

            http://mirrors.ctan.org/info/german/tabsatz/tabsatz.pdf

         * Reorder columns considering their semantic and introduce
           groups.

         * Rename 'relative' to 'factor' and avoid usage of 'x' for
           'times'.

         * Divide column 'ns/iter' by a billion (see Vladimir's
           post).

         * Right align module name (abbreviate if it is too long).

         * Avoid '%' but rely on the prefixes specified in the SI:

http://en.wikipedia.org/w/index.php?title=International_System_of_Units&oldid=487057838#Units_and_prefixes

           Then, using a fixed width of 7 characters we have 3
           significant digits, at least:

            123450000         -> 123.45M
             12345000         ->  12.35M
              1234500         ->   1.23M
               123450         -> 123.45k
                12345         ->  12.35k
                 1234.5       ->   1.23k
                  123.45      -> 123.45
                   12.345     ->  12.35
                    1.2345    ->   1.23
                    0.12345   -> 123.45m
                    0.012345  ->  12.35m
                    0.0012345 ->   1.23m

Cheers,
Famous



More information about the Digitalmars-d mailing list