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

NAME

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

VERSION

version 0.22

BENCHMARKS

Various operations comparing URI::Fast against URI's performance. The script to recreate is included in the 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 perlbrew.

Constructor

                            Rate            URI      URI::Fast
              URI        97276/s             --           -88%
        URI::Fast       819672/s           743%             --

Parse scheme

                            Rate            URI      URI::Fast
              URI        84034/s             --           -88%
        URI::Fast       704225/s           738%             --

Update scheme

                            Rate            URI      URI::Fast
              URI        54765/s             --           -92%
        URI::Fast       675676/s          1134%             --

Parse authorization

                            Rate            URI      URI::Fast
              URI        68306/s             --           -90%
        URI::Fast       714286/s           946%             --

Update authorization

                            Rate            URI      URI::Fast
              URI        43821/s             --           -93%
        URI::Fast       617284/s          1309%             --

Parse path (scalar)

                            Rate            URI      URI::Fast
              URI        83056/s             --           -84%
        URI::Fast       526316/s           534%             --

Parse path (list)

                            Rate            URI      URI::Fast
              URI        61425/s             --           -80%
        URI::Fast       314465/s           412%             --

Update path (scalar)

                            Rate            URI      URI::Fast
              URI        69930/s             --           -87%
        URI::Fast       555556/s           694%             --

Update path (array)

                            Rate            URI      URI::Fast
              URI        69061/s             --           -84%
        URI::Fast       442478/s           541%             --

Parse query

                            Rate            URI      URI::Fast
              URI        37793/s             --           -90%
        URI::Fast       364964/s           866%             --

Set query parameter

                            Rate            URI      URI::Fast
              URI        47348/s             --           -88%
        URI::Fast       400000/s           745%             --

Query form

                            Rate            URI      URI::Fast
              URI        35689/s             --           -86%
        URI::Fast       261780/s           634%             --

Query keys

                            Rate            URI      URI::Fast
              URI        35537/s             --           -87%
        URI::Fast       277778/s           682%             --

Stringification

                            Rate            URI      URI::Fast
              URI        84034/s             --           -67%
        URI::Fast       257732/s           207%             --

uri_split

                            Rate     URI::Split      URI::Fast
       URI::Split       294118/s             --           -50%
        URI::Fast       588235/s           100%             --

Encode

                            RateURI::Encode::XS      URI::Fast
  URI::Encode::XS       709220/s             --           -57%
        URI::Fast      1666667/s           135%             --

Decode

                            Rate      URI::FastURI::Encode::XS
        URI::Fast       722022/s             --           -23%
  URI::Encode::XS       943396/s            31%             --

AUTHOR

Jeff Ober <sysread@fastmail.fm>

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.