[Fontconfig] performance issue questions

L. A. Walsh fonts at tlinx.org
Thu Nov 24 22:35:10 UTC 2016

Jerry Casiano wrote:
> It's not defensive, it's just honest.
    ?? Honest != asking "why" questions, which tend to make people
defensive.  Also, I've been told *plenty* of times that honesty is no
excuse for a lack of politeness or tact and that honesty, besides
being honest can be other things that are not so pleasant to experience
or describe (that doesn't mean one should strive for the opposite,
either! :-) ). 

    Too often when people (I see it in questions others ask more often
than my own) ask questions, answers don't answer the question or
questions, but try to change what the person is asking or wanting into
something else because their original questions didn't have easy answers.

    Sorry if I was projecting that on you, and maybe I was projecting
some defensiveness since, I don't really have a "use case" -- I'm
not a font designer or publisher or someone that might need all those
fonts, other than always having been fascinated by them and have
been interested in unicode and ways to have my OS's use & display
the characters for 15-20 years.  I got more interested in the look,
shape and creation of fonts after reading the book "Fonts & Encodings"
(2007, O'Reilly), which probably stimulated my collecting, as well as
looking for ways of organizing.  I have gotten more than a bit overloaded
with the plethora of "so-so" unicode fonts that have started springing up
when many linux distros began using UTF-8 as a primary encoding.

    At this point, having no real way to get most of them automatically
organized (w/Windows being able to reduce the 23K files down into ~4-5K
of font-face variations being the most helpful).  I don't think I had more
than maybe 1000-2000 fonts before Win7 (by Win's counting) due to
OS limitations.  But w/64-bit Win7, those were substantially relaxed.

    I appreciate the added features and usefulness added by font-config
and feel it's doing a better job of making more fonts useful than Windows,
but have chafed under the performance issues and inflexibility and
the inability to upgrade or enhance anything because one, the "cache-format"
on disk was published as part of the design, and two) the data-structures
and data-format in memory was also published as part of the design.

    When I asked about upgrading/updating/changing the data formats
to allow performance and efficiency increases, I was told that they
couldn't be changed because they were published, and that 2 copies
of the formats were necessary because the on-disk format was mmapped
into the font-config-lib's program space and with the data structures
published, 32-bit programs couldn't use a padded version of the 64
bit data or a marshaled, "in-memory" version.

    Given the constraints, it pretty much looked like any implementation
changes were not possible.  So I dropped the subject to let whatever
played out, play out, because I didn't think it would be suitable for
the long term as numbers of fonts grew on many people's systems.

> I'm not a fontconfig dev or fanboy. And I'm not saying that the 
> library is perfect and needs no improvements either. I just don't see 
> it as a situation that will change anytime soon, unless someone is 
> willing and motivated to put in a lot of work for what certainly seems 
> like an edge case.
    Calling it an edge case as a reason for not doing anything about
the problem that is only growing as more fonts appear.  I asked the
questions I asked as I look for ways to improve the situation.  I may
or may not find it a big enough problem to take interest in, but I usually
have more than enough to keep me overly busy.  The fact that everything
was "frozen" made it unlikely that I would be able to contribute if I
wanted to.

    I asked about who the "clients" were that were relying on these
fixed formats -- and they had no answer they were willing to give (since
it was a newer library at the time, it was likely the answer was "no one")
and that it was "published" seemed like an excuse to not change anything as
it would involve too much work in adapting their implementation.  But
that was an impression given that the implementors didn't really want
to talk about it. 

    So 2.5 years later -- I try asking some more specific questions, and
still end up w/no answers. 

    Maybe that answers your question(s) or not, but I might point out, that
if you want your questions answered, it might be polite to answer some of
the initially posed questions first.


More information about the Fontconfig mailing list