Bencher::Scenario::ArraySamplePartition - Benchmark Array::Sample::Partition hash
This document describes version 0.002 of Bencher::Scenario::ArraySamplePartition (from Perl distribution Bencher-Scenario-ArraySamplePartition), released on 2021-07-31.
To run benchmark with default option:
% bencher -m ArraySamplePartition
To run module startup overhead benchmark:
% bencher --module-startup -m ArraySamplePartition
For more options (dump scenario, list/include/exclude/add participants, list/include/exclude/add datasets, etc), see bencher or run bencher --help.
bencher --help
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.
Version numbers shown below are the versions used when running the sample benchmark.
Array::Sample::Partition 0.001
Array::Sample::Partition::sample_partition (perl_code)
Function call template:
Array::Sample::Partition::sample_partition(<array>, <n>)
1/10
5/10
1/100
10/100
50/100
1/1000
10/1000
100/1000
500/1000
Run on: perl: v5.34.0, CPU: Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz (4 cores), OS: GNU/Linux LinuxMint version 19, OS kernel: Linux version 5.3.0-68-generic.
Benchmark command (default options):
Result formatted as table:
#table1# | dataset | rate (/s) | time (μs) | pct_faster_vs_slowest | pct_slower_vs_fastest | errors | samples | |----------+-----------+-----------+-----------------------+-----------------------+---------+---------| | 500/1000 | 8650 | 116 | 0.00% | 14836.87% | 5.3e-08 | 20 | | 100/1000 | 28900 | 34.6 | 234.18% | 4369.68% | 1e-08 | 34 | | 10/1000 | 61200 | 16.3 | 607.56% | 2011.04% | 6.5e-09 | 21 | | 1/1000 | 68900 | 14.5 | 695.89% | 1776.76% | 5.6e-09 | 28 | | 50/100 | 83954.7 | 11.9112 | 870.43% | 1439.20% | 5.8e-12 | 26 | | 10/100 | 257240 | 3.8874 | 2873.47% | 402.34% | 5.8e-12 | 20 | | 1/100 | 492000 | 2.03 | 5590.87% | 162.47% | 8.3e-10 | 20 | | 5/10 | 620000 | 1.6 | 7061.39% | 108.58% | 3.3e-09 | 20 | | 1/10 | 1300000 | 0.77 | 14836.87% | 0.00% | 1.2e-09 | 21 |
The above result formatted in Benchmark.pm style:
Rate 500/1000 100/1000 10/1000 1/1000 50/100 10/100 1/100 5/10 1/10 500/1000 8650/s -- -70% -85% -87% -89% -96% -98% -98% -99% 100/1000 28900/s 235% -- -52% -58% -65% -88% -94% -95% -97% 10/1000 61200/s 611% 112% -- -11% -26% -76% -87% -90% -95% 1/1000 68900/s 700% 138% 12% -- -17% -73% -86% -88% -94% 50/100 83954.7/s 873% 190% 36% 21% -- -67% -82% -86% -93% 10/100 257240/s 2883% 790% 319% 272% 206% -- -47% -58% -80% 1/100 492000/s 5614% 1604% 702% 614% 486% 91% -- -21% -62% 5/10 620000/s 7150% 2062% 918% 806% 644% 142% 26% -- -51% 1/10 1300000/s 14964% 4393% 2016% 1783% 1446% 404% 163% 107% -- Legends: 1/10: dataset=1/10 1/100: dataset=1/100 1/1000: dataset=1/1000 10/100: dataset=10/100 10/1000: dataset=10/1000 100/1000: dataset=100/1000 5/10: dataset=5/10 50/100: dataset=50/100 500/1000: dataset=500/1000
The above result presented as chart:
Benchmark command (benchmarking module startup overhead):
% bencher -m ArraySamplePartition --module-startup
#table2# | participant | time (ms) | mod_overhead_time | pct_faster_vs_slowest | pct_slower_vs_fastest | errors | samples | |--------------------------+-----------+-------------------+-----------------------+-----------------------+---------+---------| | Array::Sample::Partition | 7 | 3 | 0.00% | 64.41% | 0.00025 | 21 | | perl -e1 (baseline) | 4 | 0 | 64.41% | 0.00% | 0.00014 | 27 |
Rate AS:P perl -e1 (baseline) AS:P 142.9/s -- -42% perl -e1 (baseline) 250.0/s 75% -- Legends: AS:P: mod_overhead_time=3 participant=Array::Sample::Partition perl -e1 (baseline): mod_overhead_time=0 participant=perl -e1 (baseline)
To display as an interactive HTML table on a browser, you can add option --format html+datatables.
--format html+datatables
perlancar (on pc-home) <perlancar@gmail.com>
Please visit the project's homepage at https://metacpan.org/release/Bencher-Scenario-ArraySamplePartition.
Source repository is at https://github.com/perlancar/perl-Bencher-Scenario-ArraySamplePartition.
Please report any bugs or feature requests on the bugtracker website https://rt.cpan.org/Public/Dist/Display.html?Name=Bencher-Scenario-ArraySamplePartition
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.
perlancar <perlancar@cpan.org>
This software is copyright (c) 2021, 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.
To install Bencher::Scenario::ArraySamplePartition, copy and paste the appropriate command in to your terminal.
cpanm
cpanm Bencher::Scenario::ArraySamplePartition
CPAN shell
perl -MCPAN -e shell install Bencher::Scenario::ArraySamplePartition
For more information on module installation, please visit the detailed CPAN module installation guide.