On 12 July 2016 at 16:36, Werner LEMBERG wrote:
>
>>> #0 0x00b40bb6 in TT_Load_Simple_Glyph ()
>
> This comes from fontconfig, I think. Do you probably have added the
> whole TeXLive font tree to fontconfig? This makes fontconfig slooow,
> at least on my GNU/Linux box...
No, I didn't. A lot of time is spent iterating though some huge system
fonts (notably those for supporting Chinese, Japanese etc.)
>>> I don't see any viable alternative other than rewriting some
>>> portions to use the native system library calls to get information
>>> about fonts.
>
> The question is whether 2.5 minutes is expected for creating the font
> cache. If you say
>
> fc-list
>
> on the command line, how many fonts are listed? On my box, due to
> TeXLive, I have more than 9000 fonts...
1700
But many of those fonts are super quick to process and the longest
delay comes from
/Library/Fonts: caching, new cache contents: 414 fonts, 1 dirs
while stuff like
/usr/X11/lib/X11/fonts/100dpi: caching, new cache contents: 398
fonts, 0 dirs
needs just a second.
> Another test is to find out how long
>
> fc-cache --verbose --force
>
> needs for building the whole cache – I think something similar to this
> is what lilypond triggers if run the first time.
Yes, it requires 2,5 – 3,5 minutes. This is consistent with what is
observed in LilyPond's first run.
I wonder if fc-cache became more "nosy", trying to extract more data
from fonts than it did in the past or if it's just my perception (or
perhaps my computer became slower :).
In any case I don't think that LilyPond can actually do much to
improve the timing, but:
- it really should print the warning before starting font database
generation (I was sure that my lilypond was broken and deleted it
earlier)
- it could potentially only trigger font database generation when at
least one font change is requested
- it could use system library calls to find fonts, but that's probably
a lot of work and doesn't really bring anything other than decrease
the waiting time once in a while (in that case time would be better
spent improving fc than lilypond)
Mojca
_______________________________________________
bug-lilypond mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/bug-lilypond