[Fontconfig] performance issue questions

L. A. Walsh fonts at tlinx.org
Fri Nov 25 18:38:02 UTC 2016

Thanks for the reply!  Some clarifications, when you have the time,
would be appreciated.

Akira TAGOH wrote:
> On Thu, Nov 24, 2016 at 5:13 AM, L. A. Walsh <fonts at tlinx.org 
> <mailto:fonts at tlinx.org>> wrote:
>     1) If I don't use 32-bit programs (I don't install them) does the
>     32-bit font info need to be computed and cached?
> No. if it's there, that would means you have or you used to have if it 
> isn't a clean install.
>     2) does the info program detect hardlinks and not duplicate
>     the calculation but reuse it?
> No.  the cache is generated per directories but not per fonts. and 
> only checking a mtime to the target directory to detect the change.
   Generated per dir, yes, but when you choose a directory to
update, isn't the time to update it proportional to the number
of files in that directory?  Using an extreme case as an example,
if you had 10,000 files in that one dir that were all copies
of 1 of the files and if the program knew that -- couldn't it generate
the info needed for 1 file and, at worse, duplicate it 9,999 times, to
avoid the calculation cost for the 9,999 copies (if it "knew" they
were copies?).
>     3) Why aren't parallel processes used?  Most users have at
>     least 4-6 processors these days (my font cache is on a
>     server w/12 processors) and could get a substantial
>     reduction if the work was split among multiple processes.
> Well,  it could perhaps but the concern is the race on I/O as we've 
> seen on some older versions.
> Though it wouldn't take too much time once you update caches first 
> time. so wonder if we should spend much time on it.
   IO race?  Too much I/O for older machines?  Maybe have it
be configurable?  Many newer desktops & portables are coming w/some
type of SSD config, and w/servers, many come w/RAID.  Or am I on
the wrong track?  I think having it configurable would solve many of
those probs since depending on the workload, I can get optimal
performance with 9-15 parallel jobs on my server.  I haven't run
into the delay on my Windows machine, but I haven't upgrade the SW
in cygwin for a while...

   Thanks much!

More information about the Fontconfig mailing list