[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 1
From: |
Eli Zaretskii |
Subject: |
bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006 |
Date: |
Fri, 13 Dec 2013 20:55:19 +0200 |
> From: Stefan Monnier <monnier@IRO.UMontreal.CA>
> Cc: Jan Djärv <jan.h.d@swipnet.se>,
> sva-news@mygooglest.com, 15876@debbugs.gnu.org, dmantipov@yandex.ru
> Date: Fri, 13 Dec 2013 11:50:49 -0500
>
> > . I also tried a different approach: compact only those font-entities
> > that don't match any font that is still used by some face on some
> > frame. (I used font_match_p for that.) This seems to work, except
> > that font_match_p is evidently not safe enough to be used in the
> > middle of GC -- I got crashes a few times. When it did work, it
> > again prevented the compaction, as if the compacting code were not
> > there at all.
>
> Maybe a better way goes along the lines of:
> - every time we use a font, we set an "in_use" bit.
The problem is not with fonts, it is with font-entities (a different
type of object) stored within the font cache.
I couldn't find any code that marks them "in use" or records them in
some other Lisp object (which would have prevented them from being
GC'ed).
> - every now and then (ha ha!), we let the GC collect fonts that don't
> have their "in_use" bit set.
You didn't say who will reset that bit.
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, (continued)
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Dmitry Antipov, 2013/12/11
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Eli Zaretskii, 2013/12/11
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Jan Djärv, 2013/12/11
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Eli Zaretskii, 2013/12/13
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Dmitry Antipov, 2013/12/13
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Stefan Monnier, 2013/12/13
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Eli Zaretskii, 2013/12/13
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Eli Zaretskii, 2013/12/13
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Dmitry Antipov, 2013/12/16
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Stefan Monnier, 2013/12/13
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006,
Eli Zaretskii <=
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Stefan Monnier, 2013/12/13
- bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Jan Djärv, 2013/12/14
bug#15876: 24.3.50; Highly degraded performance between rev 114715 and 115006, Sebastien Vauban, 2013/12/01