NAME

Bencher::Scenario::TextTableTiny::Render - Benchmark Text::Table::Tiny's rendering speed

VERSION

This document describes version 0.001 of Bencher::Scenario::TextTableTiny::Render (from Perl distribution Bencher-Scenarios-TextTableTiny), released on 2020-08-04.

SYNOPSIS

To run benchmark with default option:

% bencher -m TextTableTiny::Render

To run module startup overhead benchmark:

% bencher --module-startup -m TextTableTiny::Render

For more options (dump scenario, list/include/exclude/add participants, list/include/exclude/add datasets, etc), see bencher or run bencher --help.

DESCRIPTION

Packaging a benchmark script as a Bencher scenario makes it convenient to include/exclude/add participants/datasets (either via CLI or Perl code), send the result to a central repository, among others . See Bencher and bencher (CLI) for more details.

BENCHMARKED MODULES

Version numbers shown below are the versions used when running the sample benchmark.

Text::Table::Tiny 0.05

BENCHMARK PARTICIPANTS

  • Text::Table::Tiny (perl_code)

    Code template:

    Text::Table::Tiny::table(rows=><table>, header_row=>1)

BENCHMARK DATASETS

  • tiny (1x1)

  • small (3x5)

  • wide (30x5)

  • long (3x300)

  • large (30x300)

SAMPLE BENCHMARK RESULTS

Run on: perl: v5.30.0, CPU: Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz (2 cores), OS: GNU/Linux Ubuntu version 19.10, OS kernel: Linux version 5.3.0-62-generic.

Benchmark with bencher -m TextTableTiny::Render --include-path archive/Text-Table-Tiny-0.001/lib --include-path archive/Text-Table-Tiny-0.02/lib --include-path archive/Text-Table-Tiny-0.03/lib --include-path archive/Text-Table-Tiny-0.04/lib --include-path archive/Text-Table-Tiny-0.05/lib --include-path archive/Text-Table-Tiny-0.05_01/lib --multimodver Text::Table::Tiny:

#table1#
+----------------+---------+-----------+-----------+-----------------------+-----------------------+---------+---------+
| dataset        | modver  | rate (/s) | time (ms) | pct_faster_vs_slowest | pct_slower_vs_fastest |  errors | samples |
+----------------+---------+-----------+-----------+-----------------------+-----------------------+---------+---------+
| large (30x300) | 0.05_01 |      95   | 11        |                 0.00% |            159509.63% | 2.7e-05 |      20 |
| large (30x300) | 0.02    |     200   |  5        |               113.24% |             74749.38% | 7.7e-05 |      20 |
| large (30x300) | 0.04    |     300   |  4        |               169.48% |             59128.44% | 4.2e-05 |      20 |
| large (30x300) | 0.03    |     300   |  4        |               174.00% |             58150.78% | 5.3e-05 |      20 |
| large (30x300) | 0.05    |     270   |  3.6      |               190.13% |             54912.36% | 9.2e-06 |      20 |
| large (30x300) | 0.001   |     300   |  3.3      |               215.65% |             50466.01% | 1.5e-05 |      20 |
| long (3x300)   | 0.05_01 |     500   |  2        |               428.04% |             30126.61% | 7.6e-05 |      26 |
| long (3x300)   | 0.04    |    1100   |  0.88     |              1104.88% |             13146.92% | 4.7e-06 |      20 |
| long (3x300)   | 0.03    |    2000   |  0.51     |              1987.59% |              7545.64% | 1.5e-06 |      20 |
| long (3x300)   | 0.05    |    2000   |  0.5      |              2011.76% |              7458.15% | 2.7e-07 |      20 |
| long (3x300)   | 0.02    |    2000   |  0.5      |              2012.15% |              7456.74% | 4.3e-07 |      20 |
| long (3x300)   | 0.001   |    2220   |  0.451    |              2241.76% |              6715.80% | 4.2e-07 |      21 |
| wide (30x5)    | 0.05_01 |    4100   |  0.24     |              4228.72% |              3587.22% | 1.1e-06 |      20 |
| wide (30x5)    | 0.04    |    6100   |  0.16     |              6375.72% |              2364.74% | 1.1e-06 |      20 |
| wide (30x5)    | 0.05    |   10000   |  0.097    |             10832.89% |              1359.90% | 1.1e-07 |      20 |
| wide (30x5)    | 0.03    |   10400   |  0.0964   |             10840.41% |              1358.90% | 2.4e-08 |      24 |
| wide (30x5)    | 0.02    |   10000   |  0.096    |             10888.74% |              1352.48% | 1.1e-07 |      20 |
| wide (30x5)    | 0.001   |   11000   |  0.089    |             11705.62% |              1251.98% | 1.9e-07 |      26 |
| small (3x5)    | 0.05_01 |   26832.7 |  0.037268 |             28212.95% |               463.73% | 5.1e-12 |      20 |
| small (3x5)    | 0.04    |   34000   |  0.029    |             36238.44% |               339.23% | 1.6e-07 |      20 |
| small (3x5)    | 0.05    |   56000   |  0.018    |             59258.94% |               168.89% | 3.3e-08 |      20 |
| small (3x5)    | 0.03    |   56900   |  0.0176   |             59989.58% |               165.62% | 6.7e-09 |      20 |
| small (3x5)    | 0.02    |   57700   |  0.0173   |             60763.31% |               162.24% | 6.5e-09 |      21 |
| small (3x5)    | 0.001   |   62500   |  0.016    |             65795.84% |               142.22% | 6.2e-09 |      23 |
| tiny (1x1)     | 0.05_01 |   76300   |  0.0131   |             80402.53% |                98.27% | 6.7e-09 |      20 |
| tiny (1x1)     | 0.04    |   80000   |  0.013    |             84153.59% |                89.44% | 2.7e-08 |      20 |
| tiny (1x1)     | 0.05    |  130400   |  0.007667 |            137532.47% |                15.97% |   3e-10 |      22 |
| tiny (1x1)     | 0.03    |  140000   |  0.0073   |            143593.05% |                11.08% | 1.3e-08 |      20 |
| tiny (1x1)     | 0.02    |  140000   |  0.0072   |            146001.91% |                 9.25% |   1e-08 |      20 |
| tiny (1x1)     | 0.001   |  151000   |  0.00661  |            159509.63% |                 0.00% | 3.3e-09 |      20 |
+----------------+---------+-----------+-----------+-----------------------+-----------------------+---------+---------+

To display as an interactive HTML table on a browser, you can add option --format html+datatables.

HOMEPAGE

Please visit the project's homepage at https://metacpan.org/release/Bencher-Scenarios-TextTableTiny.

SOURCE

Source repository is at https://github.com/perlancar/perl-Bencher-Scenarios-TextTableTiny.

BUGS

Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=Bencher-Scenarios-TextTableTiny

When submitting a bug or request, please include a test-file or a patch to an existing test-file that illustrates the bug or desired feature.

AUTHOR

perlancar <perlancar@cpan.org>

COPYRIGHT AND LICENSE

This software is copyright (c) 2020 by perlancar@cpan.org.

This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.