[Rio-pm] Performance

Eden Cardim edencardim em gmail.com
Sexta Fevereiro 20 16:55:53 PST 2009


On Fri, Feb 20, 2009 at 9:48 PM, Eden Cardim <edencardim em gmail.com> wrote:
> sub compiled_regexes {
>  my @compiled_regexes = map { qr/$_/ } @chars;
>  ELEM: for(@array) {
>   for my $regex (@compiled_regexes) {
>     next ELEM if /$regex/;
>   }
>  }
> }

Opa, tem um erro aqui, o array de regexes está sendo compilado a cada
iteração, eis o novo resultado:

my @compiled_regexes = map { qr/$_/ } @chars;
sub compiled_regexes {
  ELEM: for(@array) {
    for my $regex (@compiled_regexes) {
      next ELEM if /$regex/;
   }
  }
}

                    Rate      var_regexes compiled_regexes constant_regexes
var_regexes       2481/s               --             -75%             -94%
compiled_regexes  9833/s             296%               --             -76%
constant_regexes 40984/s            1552%             317%               --

-- 
   Eden Cardim       Need help with your Catalyst or DBIx::Class project?
  Code Monkey                    http://www.shadowcat.co.uk/catalyst/
 Shadowcat Systems Ltd.  Want a managed development or deployment platform?
http://edenc.vox.com/            http://www.shadowcat.co.uk/servers/


Mais detalhes sobre a lista de discussão Rio-pm