ntg-context - mailing list for ConTeXt users
 help / color / mirror / Atom feed
From: Hans Hagen <j.hagen@xs4all.nl>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: upcoming lmtx
Date: Sun, 3 Jan 2021 19:50:23 +0100	[thread overview]
Message-ID: <d53f59fa-4051-663f-ee4e-35e4a3db2c3c@xs4all.nl> (raw)

Hi,

I'm playing with future font trickery and as a consequence touching some 
low level font code. Now, of course we want to be compatible but it 
might be that I mess up something the process. At some point I'll do a 
more drastic split in the code paths (because when we use these new 
tricks we can drop/bypass some code).

Anyway, one of these days I'll do the usual update so consider this a 
warning (invitation) to make a opy of the current tree so that we can 
see where things differ: for text as well as math. There can eb subtle 
differences due to calculations and rounding in different places (just 
different concepts).

A teaser (mostly for MF whih probably runs the most demanding jobs):

The luametatex manual has 290 pages and loads quite some fonts (half a 
dozen bodyfont setups in order to demo some things with different fonts).

old mechanism: 10.8 sec, 292M lua, 99M tex, 158 instances
new mechanism:  9.5 sec, 149M lua, 35M tex,  30 instances

Where the new mechanmism uses:

   \enableexperiments[fonts.compact]

(not yet in current lmtx).

The new mechanism delays scaling and does it on the fly (which means 
more work for the engine and also means that some of the context font 
and lua magic has to follow). The added code actually makes the old one 
runs a bit slower, so the gain is a bit less than indicated (say, 
between 5-10% runtime on *this* document but definitely the mem saving 
remains).

Of course in practice most documents are not that demanding but we'll 
see. (As mentioned before, it might have some positive impact on cjk 
usage). Also, if we follow this route, some code can be optimized (which 
compared to mkiv, but that is more in the small nmumbers because it is 
already optimized.)

Hans

-----------------------------------------------------------------
                                           Hans Hagen | PRAGMA ADE
               Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
        tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl
-----------------------------------------------------------------
___________________________________________________________________________________
If your question is of interest to others as well, please add an entry to the Wiki!

maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context
webpage  : http://www.pragma-ade.nl / http://context.aanhet.net
archive  : https://bitbucket.org/phg/context-mirror/commits/
wiki     : http://contextgarden.net
___________________________________________________________________________________

                 reply	other threads:[~2021-01-03 18:50 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=d53f59fa-4051-663f-ee4e-35e4a3db2c3c@xs4all.nl \
    --to=j.hagen@xs4all.nl \
    --cc=ntg-context@ntg.nl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).