Excessive startup times following libtool upgrade
Peter Jeremy
peterjeremy at optushome.com.au
Sat Mar 11 06:18:49 UTC 2006
On Fri, 2006-Mar-10 21:40:22 -0600, Eric Schuele wrote:
>Ade Lovett wrote:
>>On Mar 10, 2006, at 01:45 , Peter Jeremy wrote:
>>>I have rebuilt gnucash following the libtool upgrade (admittedly, I
>>>had to downgrade guile to avoid an slib problem). After which gnucash
>>>takes 15 minutes of system time to start (it used to take about a
>>>minute), issuing a ridiculous number of syscalls (30K/sec). I've done
>>>some poking around with ktrace and gdb and believe that the problem is
>>>libtool trying to load shared libraries.
>>
>>This appears to be something unique to gnucash -- I've looked at some
>>other libltdl-using ports, and they don't exhibit the same behavior.
I've done some more poking around and I was wrong - it's not related
to the FreeBSD libltdl because guile embeds its own - libguile-ltdl.
This is a (slightly) customised version of the libtool15 code.
>guessed". They said it was a known issue and that it was FreeBSD
>specific. Their guess was that it had to do with how shared objects
>were being opened multiple times. Sounds like a good guess given
>Peter's findings.
It used to be slow but it looked to be mostly CPU-bound so I assumed
it was just guile. It's now glacial but I'm no longer sure why. I'm
considering hacking libguile-ltdl to cache both positive and negative
shared library lookup results but it would be nice to know what the
real problem was.
Unfortunately, I don't have any other guile-based applications so I'm
not sure if this is guile-specific or gnucash-specific.
--
Peter Jeremy
More information about the freebsd-ports
mailing list