slow performance on catalina installing texlive-fonts-extra

Perry E. Metzger perry at piermont.com
Tue Oct 15 23:28:34 UTC 2019


BTW, help with doing this is very actively solicited; I expect we
could substantially speed up MacPorts if we figure out what's going
wrong here, and that would be a good thing for everyone.

On Tue, 15 Oct 2019 09:56:09 -0400 "Perry E. Metzger"
<perry at piermont.com> wrote:
> On Tue, 15 Oct 2019 08:53:22 -0400 "Perry E. Metzger"
> <perry at piermont.com> wrote:
> > Under Catalina, it's taking a very long time to complete
> > installation of texlive-fonts-extra - the install phase seems to
> > hang for about 15 minutes. I vaguely suspect something slow is
> > happening in the registry part of the operation.
> >
> > Could someone else who has Catalina installed try installing
> > texlive-fonts-extra from source and see if they get the same
> > problem?
>
> Adding additional information:
>
> "time port -s install texlive-fonts-extra" yields:
>
> real	23m0.587s
> user	18m34.592s
> sys	3m26.868s
>
> Note the "user" time there, which is truly extraordinary.

So, I'd still like to know how to profile Tcl code, but:

I've done some very crude timing work by inserting print statements
into various parts of portinstall::install_main that dump out the time
(in seconds) at various stages of processing.

This very crude method indicates most of the mysterious CPU spin for
install of tex-fonts-extra takes place in the registry::write section
of that function -- about 15 minutes worth. So there's definitely
weirdness here with slow registry operation, though it might not be
database I/O as such.

That said, almost everything is surprisingly slow. There's several CPU
minutes in Tcl here in the install_main function even before the
registry write begins. That's not several wall-clock minutes with most
of it being spent in I/O, that's CPU time. That shouldn't be.

Generally, I'm pretty surprised at how slow all of this is; I would have
expected the operation to be I/O bound. I suspect that after figuring
out what is going wrong with the registry::write part, it might be
good to profile all of this and figure out why it is taking quite so
long. I suspect we could get the 18.5m of user time way, way down.

Perry
-- 
Perry E. Metzger		perry at piermont.com


More information about the macports-dev mailing list