Bencher-ScenarioBundle-Log-ger

 view release on metacpan or  search on metacpan

lib/Bencher/Scenario/Log/ger/NullOutput.pm  view on Meta::CPAN

 #TEMPLATE: #perl -MMojo::Log -e $log = Mojo::Log->new(level=>"warn"); for(1..100_000) { $log->debug("") }



=item * XLog-100k_debug (command)

Command line:

 #TEMPLATE: #perl -MXLog -e for(1..100_000) { XLog::debug("") }



=back

=head1 BENCHMARK SAMPLE RESULTS

=head2 Sample benchmark #1

Run on: perl: I<< v5.38.2 >>, CPU: I<< Intel(R) Core(TM) i5-7200U CPU @ 2.50GHz (2 cores) >>, OS: I<< GNU/Linux Ubuntu version 20.04 >>, OS kernel: I<< Linux version 5.4.0-164-generic >>.

Benchmark command (default options):

 % bencher -m Log::ger::NullOutput

Result formatted as table:

 #table1#
 +------------------------------------------+-----------+-----------+-----------------------+-----------------------+-----------+---------+
 | participant                              | rate (/s) | time (ms) | pct_faster_vs_slowest | pct_slower_vs_fastest |  errors   | samples |
 +------------------------------------------+-----------+-----------+-----------------------+-----------------------+-----------+---------+
 | Log::Dispatch::Null-100k_debug           |      1.9  |     520   |                 0.00% |              3984.92% |   0.0018  |       6 |
 | Log::Contextual+Log4perl-100k_trace      |      2.2  |     460   |                12.02% |              3546.51% |   0.0013  |       6 |
 | Log::Contextual+SimpleLogger-100k_trace  |      2.2  |     440   |                15.99% |              3421.69% |   0.0018  |       6 |
 | Mojo::Log-100k_debug                     |      5.54 |     181   |               185.56% |              1330.48% |   0.00015 |       6 |
 | Log::Dispatchouli-100k_debug             |      5.97 |     168   |               207.90% |              1226.72% |   0.00016 |       6 |
 | Log::Log4perl::Tiny-100k_trace           |      9.74 |     103   |               402.66% |               712.66% | 5.2e-05   |       6 |
 | Log::Fast-100k_is_debug                  |     15.5  |      64.4 |               700.84% |               410.08% |   5e-05   |       6 |
 | Log::Any-null_adapter-100k_log_trace     |     16    |      63   |               717.02% |               399.98% | 8.5e-05   |       6 |
 | Log::Log4perl-easy-100k_trace            |     17.8  |      56.2 |               817.79% |               345.08% |   3e-05   |       6 |
 | Log::Any-no_adapter-100k_is_trace        |     23    |      44   |              1085.67% |               244.52% | 6.3e-05   |       6 |
 | Log::Any-null_adapter-100k_is_trace      |     23    |      43.4 |              1088.31% |               243.76% | 3.9e-05   |       6 |
 | Log::Fast-100k_DEBUG                     |     25.7  |      38.9 |              1225.64% |               208.15% | 1.1e-05   |       6 |
 | XLog-100k_debug                          |     35    |      28   |              1720.58% |               124.37% | 3.1e-05   |       6 |
 | Log::Any-no_adapter-100k_log_trace       |     41.1  |      24.3 |              2021.80% |                92.52% |   5e-06   |       6 |
 | Log::ger+LGP:OptAway-100k_log_trace      |     44    |      23   |              2166.65% |                80.22% | 2.5e-05   |       6 |
 | Log::ger+LGF:MutilevelLog-100k_log_trace |     49    |      21   |              2410.91% |                62.69% | 4.3e-05   |       6 |
 | Log::ger+LGP:MutilevelLog-100k_log_6     |     49    |      20   |              2423.68% |                61.86% | 3.2e-05   |       6 |
 | Log::ger-100k_log_trace                  |     75.4  |      13.3 |              3789.52% |                 5.02% | 5.2e-06   |       6 |
 | Log::ger-100k_log_is_trace               |     79.2  |      12.6 |              3984.92% |                 0.00% | 2.9e-06   |       6 |
 +------------------------------------------+-----------+-----------+-----------------------+-----------------------+-----------+---------+


The above result formatted in L<Benchmark.pm|Benchmark> style:

                                              Rate  Log::Dispatch::Null-100k_debug  Log::Contextual+Log4perl-100k_trace  Log::Contextual+SimpleLogger-100k_trace  Mojo::Log-100k_debug  Log::Dispatchouli-100k_debug  Log::Log4perl::Tiny-100k_trace  Log:...
  Log::Dispatch::Null-100k_debug             1.9/s                              --                                 -11%                                     -15%                  -65%                          -67%                            -80%      ...
  Log::Contextual+Log4perl-100k_trace        2.2/s                             13%                                   --                                      -4%                  -60%                          -63%                            -77%      ...
  Log::Contextual+SimpleLogger-100k_trace    2.2/s                             18%                                   4%                                       --                  -58%                          -61%                            -76%      ...
  Mojo::Log-100k_debug                      5.54/s                            187%                                 154%                                     143%                    --                           -7%                            -43%      ...
  Log::Dispatchouli-100k_debug              5.97/s                            209%                                 173%                                     161%                    7%                            --                            -38%      ...
  Log::Log4perl::Tiny-100k_trace            9.74/s                            404%                                 346%                                     327%                   75%                           63%                              --      ...
  Log::Fast-100k_is_debug                   15.5/s                            707%                                 614%                                     583%                  181%                          160%                             59%      ...
  Log::Any-null_adapter-100k_log_trace        16/s                            725%                                 630%                                     598%                  187%                          166%                             63%      ...
  Log::Log4perl-easy-100k_trace             17.8/s                            825%                                 718%                                     682%                  222%                          198%                             83%      ...
  Log::Any-no_adapter-100k_is_trace           23/s                           1081%                                 945%                                     900%                  311%                          281%                            134%      ...
  Log::Any-null_adapter-100k_is_trace         23/s                           1098%                                 959%                                     913%                  317%                          287%                            137%      ...
  Log::Fast-100k_DEBUG                      25.7/s                           1236%                                1082%                                    1031%                  365%                          331%                            164%      ...
  XLog-100k_debug                             35/s                           1757%                                1542%                                    1471%                  546%                          500%                            267%      ...
  Log::Any-no_adapter-100k_log_trace        41.1/s                           2039%                                1793%                                    1710%                  644%                          591%                            323%      ...
  Log::ger+LGP:OptAway-100k_log_trace         44/s                           2160%                                1900%                                    1813%                  686%                          630%                            347%      ...
  Log::ger+LGF:MutilevelLog-100k_log_trace    49/s                           2376%                                2090%                                    1995%                  761%                          700%                            390%      ...
  Log::ger+LGP:MutilevelLog-100k_log_6        49/s                           2500%                                2200%                                    2100%                  805%                          740%                            415%      ...
  Log::ger-100k_log_trace                   75.4/s                           3809%                                3358%                                    3208%                 1260%                         1163%                            674%      ...
  Log::ger-100k_log_is_trace                79.2/s                           4026%                                3550%                                    3392%                 1336%                         1233%                            717%      ...
 
 Legends:
   Log::Any-no_adapter-100k_is_trace: participant=Log::Any-no_adapter-100k_is_trace
   Log::Any-no_adapter-100k_log_trace: participant=Log::Any-no_adapter-100k_log_trace
   Log::Any-null_adapter-100k_is_trace: participant=Log::Any-null_adapter-100k_is_trace
   Log::Any-null_adapter-100k_log_trace: participant=Log::Any-null_adapter-100k_log_trace
   Log::Contextual+Log4perl-100k_trace: participant=Log::Contextual+Log4perl-100k_trace
   Log::Contextual+SimpleLogger-100k_trace: participant=Log::Contextual+SimpleLogger-100k_trace
   Log::Dispatch::Null-100k_debug: participant=Log::Dispatch::Null-100k_debug
   Log::Dispatchouli-100k_debug: participant=Log::Dispatchouli-100k_debug
   Log::Fast-100k_DEBUG: participant=Log::Fast-100k_DEBUG
   Log::Fast-100k_is_debug: participant=Log::Fast-100k_is_debug
   Log::Log4perl-easy-100k_trace: participant=Log::Log4perl-easy-100k_trace
   Log::Log4perl::Tiny-100k_trace: participant=Log::Log4perl::Tiny-100k_trace
   Log::ger+LGF:MutilevelLog-100k_log_trace: participant=Log::ger+LGF:MutilevelLog-100k_log_trace
   Log::ger+LGP:MutilevelLog-100k_log_6: participant=Log::ger+LGP:MutilevelLog-100k_log_6
   Log::ger+LGP:OptAway-100k_log_trace: participant=Log::ger+LGP:OptAway-100k_log_trace
   Log::ger-100k_log_is_trace: participant=Log::ger-100k_log_is_trace
   Log::ger-100k_log_trace: participant=Log::ger-100k_log_trace
   Mojo::Log-100k_debug: participant=Mojo::Log-100k_debug
   XLog-100k_debug: participant=XLog-100k_debug

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

=head1 BENCHMARK NOTES

Not included here:

=over

=item * L<Log::Tiny>

Cannot do null output, must log to a file. (Technically you can use F</dev/null>, but.)

=back

=head1 HOMEPAGE

Please visit the project's homepage at L<https://metacpan.org/release/Bencher-ScenarioBundle-Log-ger>.

=head1 SOURCE

Source repository is at L<https://github.com/perlancar/perl-Bencher-ScenarioBundle-Log-ger>.

=head1 AUTHOR

perlancar <perlancar@cpan.org>



( run in 2.291 seconds using v1.01-cache-2.11-cpan-75ffa21a3d4 )