The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.

NAME

Bencher::Scenario::RegexpCommon::Startup - Benchmark module startup overhead of Regexp::Common modules

VERSION

This document describes version 0.02 of Bencher::Scenario::RegexpCommon::Startup (from Perl distribution Bencher-Scenarios-RegexpCommon), released on 2017-01-25.

SYNOPSIS

To run benchmark with default option:

 % bencher -m RegexpCommon::Startup

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.

Regexp::Common 2016060801

Regexp::Common::ANSIescape 14

Regexp::Common::CC 2016060801

Regexp::Common::Chess 0.1

Regexp::Common::Emacs 14

Regexp::Common::Email::Address 1.01

Regexp::Common::IRC 0.04

Regexp::Common::Patch::DumpPatterns 0.002

Regexp::Common::RegexpPattern 0.001

Regexp::Common::SEN 2016060801

Regexp::Common::URI 2016060801

Regexp::Common::URI::RFC1035 2016060801

Regexp::Common::URI::RFC1738 2016060801

Regexp::Common::URI::RFC1808 2016060801

Regexp::Common::URI::RFC2384 2016060801

Regexp::Common::URI::RFC2396 2016060801

Regexp::Common::URI::RFC2806 2016060801

Regexp::Common::URI::fax 2016060801

Regexp::Common::URI::file 2016060801

Regexp::Common::URI::ftp 2016060801

Regexp::Common::URI::gopher 2016060801

Regexp::Common::URI::http 2016060801

Regexp::Common::URI::news 2016060801

Regexp::Common::URI::pop 2016060801

Regexp::Common::URI::prospero 2016060801

Regexp::Common::URI::tel 2016060801

Regexp::Common::URI::telnet 2016060801

Regexp::Common::URI::tv 2016060801

Regexp::Common::URI::wais 2016060801

Regexp::Common::VATIN v1.0

Regexp::Common::balanced 2016060801

Regexp::Common::comment 2016060801

Regexp::Common::debian v0.2.14

Regexp::Common::delimited 2016060801

Regexp::Common::lingua 2016060801

Regexp::Common::list 2016060801

Regexp::Common::microsyntax 0.02

Regexp::Common::net 2016060801

Regexp::Common::net::CIDR 0.03

Regexp::Common::number 2016060801

Regexp::Common::profanity 2016060801

Regexp::Common::profanity_us 4.112150

Regexp::Common::time 0.07

Regexp::Common::whitespace 2016060801

Regexp::Common::zip 2016060801

BENCHMARK PARTICIPANTS

SAMPLE BENCHMARK RESULTS

Run on: perl: v5.24.0, CPU: Intel(R) Core(TM) M-5Y71 CPU @ 1.20GHz (2 cores), OS: GNU/Linux LinuxMint version 17.3, OS kernel: Linux version 3.19.0-32-generic.

Benchmark with default options (bencher -m RegexpCommon::Startup):

 #table1#
 +-------------------------------------+------------------------------+--------------------+----------------+-----------+------------------------+------------+-----------+---------+
 | participant                         | proc_private_dirty_size (MB) | proc_rss_size (MB) | proc_size (MB) | time (ms) | mod_overhead_time (ms) | vs_slowest |  errors   | samples |
 +-------------------------------------+------------------------------+--------------------+----------------+-----------+------------------------+------------+-----------+---------+
 | Regexp::Common::microsyntax         | 1.3                          | 4.7                | 16             |     120   |                  114.8 |        1   |   0.00013 |      21 |
 | Regexp::Common::time                | 1.2                          | 4.7                | 16             |      90   |                   84.8 |        1.3 |   0.00016 |      20 |
 | Regexp::Common::Email::Address      | 1.3                          | 4.7                | 16             |      87   |                   81.8 |        1.4 |   0.00027 |      20 |
 | Regexp::Common::RegexpPattern       | 1.2                          | 4.5                | 16             |      82   |                   76.8 |        1.5 |   0.00016 |      20 |
 | Regexp::Common                      | 1.7                          | 5.2                | 17             |      82   |                   76.8 |        1.5 |   0.00011 |      20 |
 | Regexp::Common::delimited           | 1.4                          | 4.9                | 19             |      60   |                   54.8 |        2   | 9.2e-05   |      20 |
 | Regexp::Common::Patch::DumpPatterns | 6.1                          | 9.8                | 24             |      31   |                   25.8 |        3.8 |   0.00011 |      20 |
 | Regexp::Common::URI::pop            | 1.8                          | 5.1                | 17             |      22   |                   16.8 |        5.5 |   0.00019 |      20 |
 | Regexp::Common::URI::prospero       | 1.8                          | 5.1                | 17             |      21   |                   15.8 |        5.6 |   0.00011 |      20 |
 | Regexp::Common::URI::http           | 1.8                          | 5.2                | 17             |      21   |                   15.8 |        5.6 |   0.00011 |      20 |
 | Regexp::Common::URI::fax            | 1.8                          | 5.1                | 17             |      21   |                   15.8 |        5.6 |   0.0001  |      20 |
 | Regexp::Common::URI::tel            | 1.8                          | 5.3                | 17             |      21   |                   15.8 |        5.6 | 9.2e-05   |      20 |
 | Regexp::Common::URI                 | 1.3                          | 4.7                | 16             |      21   |                   15.8 |        5.7 |   0.0001  |      20 |
 | Regexp::Common::URI::ftp            | 1.8                          | 5.1                | 17             |      21   |                   15.8 |        5.7 |   8e-05   |      20 |
 | Regexp::Common::URI::gopher         | 1.8                          | 5.2                | 17             |      21   |                   15.8 |        5.7 | 5.7e-05   |      20 |
 | Regexp::Common::URI::file           | 1.8                          | 5.1                | 17             |      21   |                   15.8 |        5.7 | 8.1e-05   |      20 |
 | Regexp::Common::URI::news           | 1.8                          | 5.2                | 17             |      21   |                   15.8 |        5.7 | 5.9e-05   |      20 |
 | Regexp::Common::URI::telnet         | 1.8                          | 5.2                | 17             |      21   |                   15.8 |        5.7 |   0.00011 |      20 |
 | Regexp::Common::URI::wais           | 1.3                          | 4.6                | 16             |      21   |                   15.8 |        5.8 | 6.1e-05   |      20 |
 | Regexp::Common::URI::tv             | 1.8                          | 5.2                | 17             |      21   |                   15.8 |        5.8 |   8e-05   |      20 |
 | Regexp::Common::profanity_us        | 7.4                          | 11                 | 31             |      20   |                   14.8 |        6.1 |   0.0001  |      20 |
 | Regexp::Common::zip                 | 0.83                         | 4.1                | 16             |      16   |                   10.8 |        7.5 | 6.9e-05   |      21 |
 | Regexp::Common::ANSIescape          | 1.4                          | 5                  | 19             |      15   |                    9.8 |        7.7 | 6.8e-05   |      20 |
 | Regexp::Common::Emacs               | 7                            | 11                 | 25             |      15   |                    9.8 |        7.9 |   0.00012 |      20 |
 | Regexp::Common::URI::RFC2806        | 1.9                          | 5.2                | 17             |      15   |                    9.8 |        8.1 | 6.8e-05   |      20 |
 | Regexp::Common::comment             | 1.4                          | 4.9                | 17             |      14   |                    8.8 |        8.4 | 6.4e-05   |      20 |
 | Regexp::Common::URI::RFC2384        | 1.4                          | 4.7                | 17             |      14   |                    8.8 |        8.5 | 7.9e-05   |      20 |
 | Regexp::Common::URI::RFC1738        | 1.1                          | 4.3                | 16             |      14   |                    8.8 |        8.8 | 4.1e-05   |      20 |
 | Regexp::Common::number              | 1.2                          | 4.5                | 16             |      13   |                    7.8 |        8.9 | 4.3e-05   |      20 |
 | Regexp::Common::URI::RFC1035        | 1.4                          | 4.7                | 17             |      13   |                    7.8 |        9.2 | 5.7e-05   |      20 |
 | Regexp::Common::debian              | 5                            | 8.5                | 23             |      13   |                    7.8 |        9.3 | 7.5e-05   |      20 |
 | Regexp::Common::CC                  | 1.3                          | 4.6                | 16             |      13   |                    7.8 |        9.3 | 2.6e-05   |      20 |
 | Regexp::Common::lingua              | 1.2                          | 4.5                | 16             |      12   |                    6.8 |        9.6 | 6.5e-05   |      20 |
 | Regexp::Common::URI::RFC2396        | 1.6                          | 5                  | 17             |      12   |                    6.8 |        9.6 | 9.6e-05   |      21 |
 | Regexp::Common::net                 | 1.2                          | 4.5                | 16             |      11   |                    5.8 |       10   |   5e-05   |      20 |
 | Regexp::Common::IRC                 | 2.9                          | 6.4                | 24             |      11   |                    5.8 |       11   |   7e-05   |      23 |
 | Regexp::Common::VATIN               | 1.2                          | 4.7                | 16             |      11   |                    5.8 |       11   | 6.4e-05   |      21 |
 | Regexp::Common::balanced            | 1.8                          | 5.4                | 19             |      11   |                    5.8 |       11   | 6.7e-05   |      20 |
 | Regexp::Common::Chess               | 1.7                          | 5                  | 17             |      11   |                    5.8 |       11   | 5.3e-05   |      20 |
 | Regexp::Common::URI::RFC1808        | 1.5                          | 4.8                | 17             |      11   |                    5.8 |       11   | 4.2e-05   |      20 |
 | Regexp::Common::profanity           | 2.5                          | 5.8                | 20             |      11   |                    5.8 |       11   | 7.4e-05   |      20 |
 | Regexp::Common::SEN                 | 1.8                          | 5.2                | 17             |      11   |                    5.8 |       11   | 3.6e-05   |      20 |
 | Regexp::Common::net::CIDR           | 1.6                          | 5.2                | 19             |      11   |                    5.8 |       11   | 7.2e-05   |      20 |
 | Regexp::Common::list                | 20                           | 24                 | 38             |      11   |                    5.8 |       11   | 2.2e-05   |      20 |
 | Regexp::Common::whitespace          | 1.6                          | 4.8                | 17             |      10   |                    4.8 |       11   | 3.7e-05   |      20 |
 | perl -e1 (baseline)                 | 1.2                          | 4.5                | 16             |       5.2 |                    0   |       23   | 1.3e-05   |      21 |
 +-------------------------------------+------------------------------+--------------------+----------------+-----------+------------------------+------------+-----------+---------+

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-RegexpCommon.

SOURCE

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

BUGS

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

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) 2017 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.