On Mon, Mar 05, 2012 at 09:41:50PM +0100, Slaven Rezic wrote:
> I observed that a CPAN shell takes much longer to quit under 5.15.8
> than in previous stable perl versions. To reproduce, just try:
>
> $ time /opt/perl-5.15.8/bin/cpan5.15.8 -A CPAN
> [...]
> CPAN ANDK andreas.koenig.7os6vvqr@franz.ak.mind.de Andreas J. Koenig
> /opt/perl-5.15.8/bin/cpan5.15.8 -A CPAN 8,24s user 0,04s system 99% cpu 8,281 total
>
> $ time /opt/perl-5.14.2/bin/cpan -A CPAN
> [...]
> CPAN ANDK andreas.koenig.7os6vvqr@franz.ak.mind.de Andreas J. Koenig
> /opt/perl-5.14.2/bin/cpan -A CPAN 0,74s user 0,06s system 100% cpu 0,798 total
>
> CPAN.pm version is the same in both perls. I see the same slowness
> also when running a large Tk program, so it's very probably not a
> CPAN.pm problem. Quitting CPAN.pm is fast if none of the indexes are
> loaded, i.e. /opt/perl-5.15.8/bin/cpan5.15.8 followed by "q". So the
> slowness is probably caused by a large number of
> objects/scalars/whatever.
I can reproduce this. The difference is in the time to execute
sv_clean_objs() in perl_destruct(). I've just kicked off a couple of
profile runs to see what's going on.
--
Little fly, thy summer's play my thoughtless hand
has terminated with extreme prejudice.
(with apologies to William Blake)
Thread Previous