PURPOSE
Benchmark::Featureset::ParamCheck benchmarking named parameters.
SAMPLE RESULTS
11th Gen Intel Core i3-1115G4 @ 3.00 GHz (1 physical processor, 2 cores, 4 threads); 12 GB RAM; Linux 5.15.0-46-generic; Ubuntu 22.04.1 LTS; Perl 5.34.0.
Simple Input Data
TP-TT - 1 wallclock secs ( 0.77 usr + 0.00 sys = 0.77 CPU) @ 64.94/s (n=50)
TP2-TT - 1 wallclock secs ( 0.89 usr + 0.00 sys = 0.89 CPU) @ 56.18/s (n=50)
TP-Moose - 1 wallclock secs ( 0.91 usr + 0.00 sys = 0.91 CPU) @ 54.95/s (n=50)
PVC-TT - 0 wallclock secs ( 0.91 usr + 0.00 sys = 0.91 CPU) @ 54.95/s (n=50)
RefUtilXS - 1 wallclock secs ( 0.96 usr + 0.00 sys = 0.96 CPU) @ 52.08/s (n=50)
TP2-Moose - 1 wallclock secs ( 0.98 usr + 0.00 sys = 0.98 CPU) @ 51.02/s (n=50)
PurePerl - 1 wallclock secs ( 1.03 usr + 0.00 sys = 1.03 CPU) @ 48.54/s (n=50)
TP-Mouse - 1 wallclock secs ( 1.22 usr + 0.00 sys = 1.22 CPU) @ 40.98/s (n=50)
PVC-Specio - 2 wallclock secs ( 1.23 usr + 0.00 sys = 1.23 CPU) @ 40.65/s (n=50)
TP-Specio - 1 wallclock secs ( 1.23 usr + 0.00 sys = 1.23 CPU) @ 40.65/s (n=50)
TP2-Mouse - 1 wallclock secs ( 1.28 usr + 0.00 sys = 1.28 CPU) @ 39.06/s (n=50)
PVC-Moose - 1 wallclock secs ( 1.29 usr + 0.00 sys = 1.29 CPU) @ 38.76/s (n=50)
DV-Mouse - 2 wallclock secs ( 1.30 usr + 0.00 sys = 1.30 CPU) @ 38.46/s (n=50)
TP2-Specio - 2 wallclock secs ( 1.34 usr + 0.00 sys = 1.34 CPU) @ 37.31/s (n=50)
PV-TT - 1 wallclock secs ( 1.36 usr + 0.00 sys = 1.36 CPU) @ 36.76/s (n=50)
DV-TT - 1 wallclock secs ( 1.46 usr + 0.00 sys = 1.46 CPU) @ 34.25/s (n=50)
PV - 2 wallclock secs ( 1.64 usr + 0.00 sys = 1.64 CPU) @ 30.49/s (n=50)
DV-Moose - 2 wallclock secs ( 2.52 usr + 0.00 sys = 2.52 CPU) @ 19.84/s (n=50)
PC-TT - 2 wallclock secs ( 2.54 usr + 0.00 sys = 2.54 CPU) @ 19.69/s (n=50)
PC-PurePerl - 4 wallclock secs ( 3.27 usr + 0.01 sys = 3.28 CPU) @ 15.24/s (n=50)
MXPV-Moose - 4 wallclock secs ( 4.21 usr + 0.00 sys = 4.21 CPU) @ 11.88/s (n=50)
MXPV-TT - 4 wallclock secs ( 4.22 usr + 0.00 sys = 4.22 CPU) @ 11.85/s (n=50)
TP-Nano - 5 wallclock secs ( 5.17 usr + 0.00 sys = 5.17 CPU) @ 9.67/s (n=50)
TP2-Nano - 6 wallclock secs ( 5.28 usr + 0.00 sys = 5.28 CPU) @ 9.47/s (n=50)
Complex Input Data
TP-TT - 1 wallclock secs ( 0.81 usr + 0.00 sys = 0.81 CPU) @ 61.73/s (n=50)
TP2-TT - 1 wallclock secs ( 0.93 usr + 0.00 sys = 0.93 CPU) @ 53.76/s (n=50)
PVC-TT - 0 wallclock secs ( 0.94 usr + 0.00 sys = 0.94 CPU) @ 53.19/s (n=50)
TP-Moose - 1 wallclock secs ( 1.08 usr + 0.00 sys = 1.08 CPU) @ 46.30/s (n=50)
RefUtilXS - 1 wallclock secs ( 1.09 usr + 0.00 sys = 1.09 CPU) @ 45.87/s (n=50)
TP2-Moose - 1 wallclock secs ( 1.13 usr + 0.00 sys = 1.13 CPU) @ 44.25/s (n=50)
PurePerl - 2 wallclock secs ( 1.23 usr + 0.00 sys = 1.23 CPU) @ 40.65/s (n=50)
TP-Mouse - 2 wallclock secs ( 1.26 usr + 0.00 sys = 1.26 CPU) @ 39.68/s (n=50)
PVC-Specio - 1 wallclock secs ( 1.32 usr + 0.00 sys = 1.32 CPU) @ 37.88/s (n=50)
TP-Specio - 2 wallclock secs ( 1.32 usr + 0.00 sys = 1.32 CPU) @ 37.88/s (n=50)
TP2-Mouse - 1 wallclock secs ( 1.33 usr + 0.00 sys = 1.33 CPU) @ 37.59/s (n=50)
DV-Mouse - 2 wallclock secs ( 1.34 usr + 0.00 sys = 1.34 CPU) @ 37.31/s (n=50)
PV-TT - 2 wallclock secs ( 1.41 usr + 0.00 sys = 1.41 CPU) @ 35.46/s (n=50)
TP2-Specio - 1 wallclock secs ( 1.43 usr + 0.00 sys = 1.43 CPU) @ 34.97/s (n=50)
PVC-Moose - 1 wallclock secs ( 1.45 usr + 0.00 sys = 1.45 CPU) @ 34.48/s (n=50)
DV-TT - 2 wallclock secs ( 1.53 usr + 0.00 sys = 1.53 CPU) @ 32.68/s (n=50)
PV - 2 wallclock secs ( 1.87 usr + 0.00 sys = 1.87 CPU) @ 26.74/s (n=50)
PC-TT - 3 wallclock secs ( 2.64 usr + 0.00 sys = 2.64 CPU) @ 18.94/s (n=50)
DV-Moose - 3 wallclock secs ( 2.67 usr + 0.00 sys = 2.67 CPU) @ 18.73/s (n=50)
PC-PurePerl - 3 wallclock secs ( 3.42 usr + 0.00 sys = 3.42 CPU) @ 14.62/s (n=50)
MXPV-TT - 4 wallclock secs ( 4.26 usr + 0.00 sys = 4.26 CPU) @ 11.74/s (n=50)
MXPV-Moose - 4 wallclock secs ( 4.28 usr + 0.00 sys = 4.28 CPU) @ 11.68/s (n=50)
TP-Nano - 16 wallclock secs (15.99 usr + 0.00 sys = 15.99 CPU) @ 3.13/s (n=50)
TP2-Nano - 16 wallclock secs (16.07 usr + 0.00 sys = 16.07 CPU) @ 3.11/s (n=50)
AUTHOR
Toby Inkster <tobyink@cpan.org>.
COPYRIGHT AND LICENCE
This software is copyright (c) 2017, 2022 by Toby Inkster.
This is free software; you can redistribute it and/or modify it under the same terms as the Perl 5 programming language system itself.