perl5 icon indicating copy to clipboard operation
perl5 copied to clipboard

profile installman and improve its performance

Open p5pRT opened this issue 12 years ago • 7 comments

Migrated from rt.perl.org#116485 (status was 'open')

Searchable as RT116485$

p5pRT avatar Jan 21 '13 16:01 p5pRT

From @rjbs

The `installman` script is slow. All it is doing text processing, which we're told is something Perl is good at. So it would be nice to know what it is doing that is taking so much CPU, and where possible address it.

p5pRT avatar Jan 21 '13 16:01 p5pRT

From [email protected]

On Mon Jan 21 08​:18​:06 2013, rjbs wrote​:

The `installman` script is slow. All it is doing text processing, which we're told is something Perl is good at. So it would be nice to know what it is doing that is taking so much CPU, and where possible address it.

Hi,

I'd like to try to tackle this ticket. Here's my plan of attack​:

1) Build perl5 from git source 2) Run installman with --man1dir=/dev/null --man3dir=/dev/null and take the timing 3) Run installman under NYTProf 4) ??? 5) Profit!!!

But seriously, I can take some timings and do a bit of profiling to see where our bottleneck is.
Does that sound like a good plan?

Thanks,

Bob

p5pRT avatar Jan 23 '13 13:01 p5pRT

The RT System itself - Status changed from 'new' to 'open'

p5pRT avatar Jan 23 '13 13:01 p5pRT

From @rjbs

* Bob Kuo via RT <perlbug-followup@​perl.org> [2013-01-23T08​:49​:11]

1) Build perl5 from git source 2) Run installman with --man1dir=/dev/null --man3dir=/dev/null and take the timing 3) Run installman under NYTProf 4) ??? 5) Profit!!!

But seriously, I can take some timings and do a bit of profiling to see where our bottleneck is.
Does that sound like a good plan?

Yes, but you'll want to talk to http​://search.cpan.org/~ilmari/

He's been doing some work on this already and made some improvements. At least you'll want to make sure you start from his work, so you don't end up duplicating it!

-- rjbs

p5pRT avatar Jan 24 '13 03:01 p5pRT

From @ilmari

Ricardo Signes <perl.p5p@​rjbs.manxome.org> writes​:

* Bob Kuo via RT <perlbug-followup@​perl.org> [2013-01-23T08​:49​:11]

1) Build perl5 from git source 2) Run installman with --man1dir=/dev/null --man3dir=/dev/null and take the timing 3) Run installman under NYTProf 4) ??? 5) Profit!!!

But seriously, I can take some timings and do a bit of profiling to see where our bottleneck is.
Does that sound like a good plan?

Yes, but you'll want to talk to http​://search.cpan.org/~ilmari/

He's been doing some work on this already and made some improvements. At least you'll want to make sure you start from his work, so you don't end up duplicating it!

My changes so far are here​:

https://github.com/ilmari/pod-simple/commits/speedup-parse https://github.com/ilmari/podlators/commits/speedup-pod-man

These only speed up installman by about 10%, though (under NYTProf).

-- "The surreality of the universe tends towards a maximum" -- Skud's Law "Never formulate a law or axiom that you're not prepared to live with the consequences of." -- Skud's Meta-Law

p5pRT avatar Jan 24 '13 10:01 p5pRT

From @ilmari

Ricardo Signes <perl.p5p@​rjbs.manxome.org> writes​:

  • Bob Kuo via RT <perlbug-followup@​perl.org> [2013-01-23T08​:49​:11]
  1. Build perl5 from git source
  2. Run installman with --man1dir=/dev/null --man3dir=/dev/null and take the timing
  3. Run installman under NYTProf
  4. ???
  5. Profit!!! But seriously, I can take some timings and do a bit of profiling to see where our bottleneck is. Does that sound like a good plan?

Yes, but you'll want to talk to http​://search.cpan.org/~ilmari/ He's been doing some work on this already and made some improvements. At least you'll want to make sure you start from his work, so you don't end up duplicating it!

My changes so far are here​:

https://github.com/ilmari/pod-simple/commits/speedup-parse https://github.com/ilmari/podlators/commits/speedup-pod-man

These only speed up installman by about 10%, though (under NYTProf).

@ilmari, did the work you were describing in this ticket 11 years ago ever make it to CPAN ... and then into core? Thanks.

jkeenan avatar Jul 06 '24 01:07 jkeenan

From @ilmari

[snip] My changes so far are here​:

https://github.com/ilmari/pod-simple/commits/speedup-parse https://github.com/ilmari/podlators/commits/speedup-pod-man

The second of those two links no longer resolves.

jkeenan avatar Aug 09 '24 12:08 jkeenan