[squeak-dev] Dead primitive 103 makes scrolling truetype fonts very, very slow. Let's get rid of it

Marcel Taeumel marcel.taeumel at hpi.de
Thu Feb 17 10:58:07 UTC 2022


Hi Tony --

I will look into this. The primitive is not dead for me... Fallback code seems a little bit slower...

> why is it re-layouting when I just change the TransformMorph's offset??

It is not. The CompositionScanner does the layouting. The DisplayScanner does the display. Both are of superclass "CharacterScanner". Both need that primitive. I suppose.

I will check is along with my current work on TrueType fonts and related caches.


Best,
Marcel
Am 17.02.2022 10:07:17 schrieb Tony Garnock-Jones <tonyg at leastfixedpoint.com>:
Hi all,

Commenting out "" in
CharacterScanner>>primScanCharactersFrom:to:in:rightX:stopConditions:kern:
immediately and dramatically improves the performance of scrolling
anything truetype-font-ish on my very slow arm64 cellphone.

It's still not *fast* (why is it re-layouting when I just change the
TransformMorph's offset??) but it's faster than it was before, which was
"lock up the entire UI for ten seconds while thinking about failing
primitive 103"-speed.

Interestingly, fast x86_64 machines aren't immune either! Running a
tally in the same image on my x86_64 pc with a modern VM, and doing the
same scrolly thing, showed primitives to be taking a significant chunk
of time. Commenting out "" there immediately eliminated a
lot of wasted CPU usage, though the machine is so fast it's not easy to
notice the improvement at squishy meatbody sensory refresh rates.

So, should I commit a change that comments out "" for
good? I don't see a downside! Is there one?

Cheers,
Tony

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squeakfoundation.org/pipermail/squeak-dev/attachments/20220217/51f7fbae/attachment.html>


More information about the Squeak-dev mailing list