[Fontconfig] 2.3.91 performance regression from 2.3.2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Ronny V. Vindenes wrote:
> While testing 2.3.91 I noticed a huge performance regression compared to
> 2.3.2 (Fedora rawhide).
> 
> If I keep my fonts[1] in several subdirectories[2], rendering pages in
> epiphany[3] takes a very long time (2-3 seconds with 100% cpu load) even
> for short pages using a single font (clicking through to other pages
> using the same font takes as long as well), but if I put all the fonts
> in a single directory things are rendered at the expected speed.

In the current configuration, every directory has an in-memory bank and
an associated bank id (randomly generated).  fontconfig currently uses
linear search to locate bank ids in a table, and I bet that's what's
causing your problem.  I implemented a naive bank lookup algorithm first
and was waiting to see if anyone would complain about it being slow.
Obviously it is, so I'll commit a patch which makes the list a
move-to-front list, which ought to be a sufficiently sophisticated data
structure for this purpose.  This ought to solve your performance
problems.  I'll let you know when I've implemented it.

pat


[Index of Archives]     [Fedora Fonts]     [Fedora Users]     [Fedora Cloud]     [Kernel]     [Fedora Packaging]     [Fedora Desktop]     [PAM]     [Gimp Graphics Editor]     [Yosemite News]

  Powered by Linux