# PODNAME: URI::Fast::Benchmarks
# ABSTRACT: Benchmarks comparing URI::Fast and URI

__END__

=pod

=encoding UTF-8

=head1 NAME

URI::Fast::Benchmarks - Benchmarks comparing URI::Fast and URI

=head1 VERSION

version 0.07

=head1 BENCHMARKS

Various operations comparing L<URI::Fast> against L<URI>'s performance. The
script to recreate is included in the C<bench> folder of the distribution.

Tests were performed on my development machine, a 2015 MacBook Pro (2.7 GHz
Intel Core i5, 8GB 1867 MHz DDR3 RAM) using Perl 5.24 installed using
L<perlbrew|https://perlbrew.pl>.

=head2 Constructor

                            Rate            URI      URI::Fast
              URI        95057/s             --           -88%
        URI::Fast       806452/s           748%             --

=head2 Parse scheme

                            Rate            URI      URI::Fast
              URI        83472/s             --           -89%
        URI::Fast       735294/s           781%             --

=head2 Update scheme

                            Rate            URI      URI::Fast
              URI        48356/s             --           -92%
        URI::Fast       595238/s          1131%             --

=head2 Parse authorization

                            Rate            URI      URI::Fast
              URI        62500/s             --           -91%
        URI::Fast       684932/s           996%             --

=head2 Update authorization

                            Rate            URI      URI::Fast
              URI        39246/s             --           -92%
        URI::Fast       462963/s          1080%             --

=head2 Parse path (scalar)

                            Rate            URI      URI::Fast
              URI        85324/s             --           -82%
        URI::Fast       485437/s           469%             --

=head2 Parse path (list)

                            Rate            URI      URI::Fast
              URI        56433/s             --           -81%
        URI::Fast       292398/s           418%             --

=head2 Update path (scalar)

                            Rate            URI      URI::Fast
              URI        66050/s             --           -87%
        URI::Fast       500000/s           657%             --

=head2 Update path (array)

                            Rate            URI      URI::Fast
              URI        63371/s             --           -83%
        URI::Fast       367647/s           480%             --

=head2 Parse query

                            Rate            URI      URI::Fast
              URI        37425/s             --           -86%
        URI::Fast       265957/s           611%             --

=head2 Set query parameter

                            Rate            URI      URI::Fast
              URI        48263/s             --           -85%
        URI::Fast       322581/s           568%             --

=head2 Query form

                            Rate            URI      URI::Fast
              URI        37010/s             --           -82%
        URI::Fast       201613/s           445%             --

=head2 Query keys

                            Rate            URI      URI::Fast
              URI        39526/s             --           -85%
        URI::Fast       270270/s           584%             --

=head2 Stringification

                            Rate            URI      URI::Fast
              URI        95785/s             --           -75%
        URI::Fast       384615/s           302%             --

=head2 uri_split

                            Rate     URI::Split      URI::Fast
       URI::Split       331126/s             --           -45%
        URI::Fast       602410/s            82%             --

=head1 AUTHOR

Jeff Ober <sysread@fastmail.fm>

=head1 COPYRIGHT AND LICENSE

This software is copyright (c) 2018 by Jeff Ober.

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

=cut
