in reply to Re^8: Unusual sorting requirements; comparing three implementations.
in thread Unusual sorting requirements; comparing three implementations.
(Even for am Atom, your perl seems really, really slow. You have Moo running on your system at half the speed of Moose on mine?)
I have that also, but still not seeing the benefit :
C:\test>ppm-shell ppm 4.10 (ActivePerl 1007) Copyright (C) 2010 ActiveState Software Inc. All rights reserved. ppm> search Class::XSAccessor 1: Class-XSAccessor Generate fast XS accessors without runtime compilation Version: 1.13 Released: 2011-12-12 Author: Steffen Mueller <smueller@cpan.org> Provide: Class::XSAccessor version 1.13 Provide: Class::XSAccessor::Array version 1.13 Provide: Class::XSAccessor::Heavy version 1.13 Require: XSLoader Repo: ActiveState Package Repository CPAN: http://search.cpan.org/dist/Class-XSAccessor-1.13/ Installed: 1.13 (site) ppm> quit C:\test>perl -MClass::XSAccessor -E"say $Class::XSAccessor::VERSIO 1.13 C:\test>type junk99.pl use Benchmark qw(cmpthese); { package Foo1; sub new { bless $_[1], $_[0] } sub foo { $_[0]{foo} } } { package Foo2; use Moo; has foo => (is => 'ro'); } { package Foo3; use Moose; has foo => (is => 'ro'); } our $foo1 = Foo1::->new({foo => 0}); our $foo2 = Foo2::->new({foo => 0}); our $foo3 = Foo3::->new({foo => 0}); our $foo4 = { foo => 0 }; cmpthese( -3, { OO_perl => q[ $foo1->foo for 1 .. 1000; ], moo => q[ $foo2->foo for 1 .. 1000; ], moose => q[ $foo3->foo for 1 .. 1000; ], plain_perl => q[ $foo4->{foo} for 1 .. 1000; ], }); C:\test>junk99 Rate moose moo OO_perl plain_perl moose 1969/s -- -4% -17% -74% moo 2043/s 4% -- -14% -73% OO_perl 2382/s 21% 17% -- -69% plain_perl 7624/s 287% 273% 220% --
|
|---|