>It -should- be faster, not slower - it uses (AFAIK) MRO::Compat to handle the >search order. In fact it is slower.
>Are you using it with a DFS or C3 mro? Have you checked the MRO::Compat
speeds?
with or without - results are the same
>A little basic investigation (and posting your benchmark code) would go a
long
>way here.
Test files attached (with dfs and with c3).
Results:
perl 5.10.0 compiled with configure.gnu (FreeBSD6.2, 3Ghz P4 prescott,
DDR333).
[EMAIL PROTECTED] /home/syber =>./perl510/bin/perl test/cst.plx
Benchmark: running getnulla, getnullao, getnullb, getnullbo for at least 1
CPU seconds...
getnulla: 2 wallclock secs ( 1.05 usr + 0.00 sys = 1.05 CPU) @ 86992.59/s
(n=91750)
getnullao: 1 wallclock secs ( 1.04 usr + 0.00 sys = 1.04 CPU) @ 75686.50/s
(n=78643)
getnullb: 1 wallclock secs ( 1.05 usr + 0.00 sys = 1.05 CPU) @ 80300.56/s
(n=84692)
getnullbo: 1 wallclock secs ( 1.04 usr + 0.00 sys = 1.04 CPU) @ 70640.60/s
(n=73400)
Benchmark: running seta, setao, setb, setbo for at least 1 CPU seconds...
seta: 1 wallclock secs ( 1.03 usr + 0.00 sys = 1.03 CPU) @
177939.39/s (n=183500)
setao: 1 wallclock secs ( 1.05 usr + 0.00 sys = 1.05 CPU) @
221411.34/s (n=231790)
setb: 1 wallclock secs ( 1.06 usr + 0.00 sys = 1.06 CPU) @
174841.41/s (n=185769)
setbo: 1 wallclock secs ( 0.99 usr + 0.01 sys = 1.00 CPU) @
220200.00/s (n=220200)
Benchmark: running geta, getao, getb, getbo for at least 1 CPU seconds...
geta: 1 wallclock secs ( 1.02 usr + 0.00 sys = 1.02 CPU) @
153684.03/s (n=157286)
getao: 0 wallclock secs ( 1.04 usr + 0.00 sys = 1.04 CPU) @
192656.36/s (n=200182)
getb: 1 wallclock secs ( 1.05 usr + 0.00 sys = 1.05 CPU) @
150243.34/s (n=157286)
getbo: 1 wallclock secs ( 1.05 usr + 0.00 sys = 1.05 CPU) @
191218.63/s (n=200182)
perl 5.8.8 compiled with configure.gnu (the same machine)
[EMAIL PROTECTED] /home/syber =>./operl58/bin/perl test/cst.plx
Benchmark: running getnulla, getnullao, getnullb, getnullbo for at least 1
CPU seconds...
getnulla: 2 wallclock secs ( 1.09 usr + 0.00 sys = 1.09 CPU) @
101387.05/s (n=110100)
getnullao: 1 wallclock secs ( 1.10 usr + 0.00 sys = 1.10 CPU) @ 86912.00/s
(n=95739)
getnullb: 1 wallclock secs ( 1.08 usr + 0.00 sys = 1.08 CPU) @ 92838.03/s
(n=100091)
getnullbo: 1 wallclock secs ( 1.05 usr + 0.00 sys = 1.05 CPU) @ 80899.82/s
(n=84692)
Benchmark: running seta, setao, setb, setbo for at least 1 CPU seconds...
seta: 1 wallclock secs ( 1.09 usr + 0.00 sys = 1.09 CPU) @
268435.20/s (n=293601)
setao: 1 wallclock secs ( 1.10 usr + 0.00 sys = 1.10 CPU) @
307535.89/s (n=338770)
setb: 1 wallclock secs ( 1.08 usr + 0.00 sys = 1.08 CPU) @
272325.57/s (n=293601)
setbo: 1 wallclock secs ( 1.12 usr + 0.00 sys = 1.12 CPU) @
303234.69/s (n=338770)
Benchmark: running geta, getao, getb, getbo for at least 1 CPU seconds...
geta: 1 wallclock secs ( 1.05 usr + 0.00 sys = 1.05 CPU) @
221411.34/s (n=231790)
getao: 1 wallclock secs ( 1.10 usr + 0.00 sys = 1.10 CPU) @
249873.25/s (n=275251)
getb: 1 wallclock secs ( 1.09 usr + 0.00 sys = 1.09 CPU) @
211922.29/s (n=231790)
getbo: 2 wallclock secs ( 1.04 usr + 0.00 sys = 1.04 CPU) @
249319.94/s (n=259059)
5.10.0 Release became slightly faster than 5.10.0 RC2, but still slower than
5.8.8
>Plus Catalyst doesn't use C::A::G - maybe you wanted the DBIC list?
yes, sorry
test for both.plx
Description: Binary data
test for 5.10.0 only.plx
Description: Binary data
_______________________________________________ List: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/dbix-class IRC: irc.perl.org#dbix-class SVN: http://dev.catalyst.perl.org/repos/bast/DBIx-Class/ Searchable Archive: http://www.grokbase.com/group/[EMAIL PROTECTED]
