From: Yue Wang <yuleopen@gmail.com>
To: mailing list for ConTeXt users <ntg-context@ntg.nl>
Subject: Re: XeConTeXt bug report I: strange benchmark
Date: Tue, 12 May 2009 20:26:58 +0800 [thread overview]
Message-ID: <68bfdc900905120526h65b0bbd1pb777e9a4eb4ee742@mail.gmail.com> (raw)
In-Reply-To: <4A095F7E.6010900@wxs.nl>
2009/5/12 Hans Hagen <pragma@wxs.nl>:
> Yue Wang wrote:
>> Thank you, Taco.
>>
>> currently I found one way to speed up font loading:
>>
>> \synchronizemathfontsfalse
>> \let\synchronizetext\relax
>> \starttypescript[serif] [myzhfont]
>> \definefontsynonym [Serif] [file:SimSun]
>> \stoptypescript
>> \definetypeface [myzhfont] [rm] [serif][myzhfont] [default]
>> \def\a{\myzhfont}
>> \dorecurse{10000}{{hello {\a 你好}}\par}
>> \bye
>
> as wolfgang already pointed out, if you want fast fonts you should
> define them directly using \definefont
>
I have no speed gain while testing his example.
> if you disable bits and pieces of the setupbodyfont mechanism you will
> eventually run into problems, for instance because \tfd etc are not
> defined and your chapter titles etc will behave unexpected (sizes as
> well as when mixed with math)
>
You are right.
> in a regular document you only set up the bodyfont once (not 10000
> times) and then use \bf, \sl, \itc etc which are pretty fast
>
for multilingual typesetting this is different.
different fonts will be used for full-width punctuations,
cjk-characters (maybe also splict to ruby, kanji, hangul and hanzi),
cjk-exta, cjk-extb, and latin. for a not-so-long document (100 pages),
switching more than 100times/page is ordinary case.
Especially for educational documents (For example, English text book
for Chinese students)
>> TeXExec | runtime: 10.172
>> much faster, but still far slower than \definefont.
>>
>> this reminds me another possible bug in ConTeXt:
>
> as mentioned ... we're no talking bugs here but 'features' and side
> effects of them
ok. this is a feature that I don't like so much...
>
>>
>> Test1:
>>
>> \definetypeface[iwona][ss][sans] [iwona] [default]
>> \definetypeface[iwona][mm][math] [iwona] [default][text=ss]
>> \setupbodyfont[iwona]
>> \starttext
>> foobar
>> \stoptext
>>
>> runtime= 6.625. There is a 5 seconds pause after loading
>> (c:/context/tex/texmf-context/tex/context/base/spec-xet.tex)
>>
>> But I don't know what xetex is loading.
>
> fonts (like the sans and more noticeably math (6 families * 3 sizes = 18
> fonts at least)
>
but it's pretty fast on mac (only 1 second delay) on the same machine.
[mac do not use fontconfig for searching system fonts]
Strange uh? Well, I call it Windows features:)
moreover, can you tell me why pdftex load these fonts so fast? (also 6
families * 3 sizes)
>> Test 2:
>>
>> \definetypeface[iwona][ss][sans] [iwona] [default]
>> %\definetypeface[iwona][mm][math] [iwona] [default][text=ss]
>> \setupbodyfont[iwona]
>> \starttext
>> foobar
>> \stoptext
>>
>> I only comment the math defination line. now
>> runetime = 0.969
>
> right .. and as context is supposed to do math (keep in mind that some
> symbols come from math anyway) this is expected
>
ok.
>> Test 3:
>>
>> move the three lines to context.rme,
>> \definetypeface[iwona][ss][sans] [iwona] [default]
>> \definetypeface[iwona][mm][math] [iwona] [default][text=ss]
>> \setupbodyfont[iwona]
>> then rebuild the format.
>> note we also load the math font. but one thing is clear: Hans said
>> unlike plain TeX and LaTeX, font tfm is not dumped into ConTeXt
>> format.
>
> well, in this case you probably *did* force them in format; the normal
> default font (lm) is not in the format and loading is delayed
>
no. I did exactly the same as the default settings do.
you also use :
\setupencoding[default=ec]
\usetypescript[fallback][\defaultencoding] \setupbodyfont[rm,12pt]
in cont-en.tex. also in context.tex:
\setupencoding[default=ec]
\usetypescript[fallback][\defaultencoding]
\setupbodyfont[rm,12pt]
So I am not forcing them into the format. actually the loading of
iwona is delayed to runtime.
>> However, at this time we compile
>> \starttext
>> foobar
>> \stoptext
>>
>> runtime =0.875
>>
>> I don't know the reason for this problem too....
>> I think XeTeX load math tfms quite fast. (it should be even faster
>> than otf loading, but in xecontext, this is not true).
>
> more needs to be set up ... not only fonts, + some testing + ...
>
> just do a \tracingall before setupbodyfont and you will see
>
> Hans
>
> -----------------------------------------------------------------
> Hans Hagen | PRAGMA ADE
> Ridderstraat 27 | 8061 GH Hasselt | The Netherlands
> tel: 038 477 53 69 | fax: 038 477 53 74 | www.pragma-ade.com
> | 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://tex.aanhet.net
> archive : https://foundry.supelec.fr/projects/contextrev/
> wiki : http://contextgarden.net
> ___________________________________________________________________________________
>
___________________________________________________________________________________
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://tex.aanhet.net
archive : https://foundry.supelec.fr/projects/contextrev/
wiki : http://contextgarden.net
___________________________________________________________________________________
next prev parent reply other threads:[~2009-05-12 12:26 UTC|newest]
Thread overview: 51+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-12 5:01 Yue Wang
2009-05-12 9:02 ` Yue Wang
2009-05-12 9:09 ` Yue Wang
2009-05-12 9:30 ` Hans Hagen
2009-05-12 9:59 ` Yue Wang
2009-05-12 10:04 ` Yue Wang
2009-05-12 10:06 ` Hans Hagen
[not found] ` <4A094C71.3040503@elvenkind.com>
2009-05-12 11:02 ` Hans Hagen
2009-05-12 11:26 ` Taco Hoekwater
2009-05-12 11:33 ` Yue Wang
2009-05-12 11:52 ` Taco Hoekwater
2009-05-12 11:57 ` Hans Hagen
2009-05-12 12:01 ` Yue Wang
2009-05-12 12:21 ` Hans Hagen
2009-05-12 12:26 ` Taco Hoekwater
2009-05-12 12:31 ` Yue Wang
2009-05-12 11:09 ` Yue Wang
2009-05-12 11:37 ` Hans Hagen
2009-05-12 12:26 ` Yue Wang [this message]
2009-05-12 12:54 ` Hans Hagen
2009-05-12 13:59 ` Yue Wang
2009-05-12 14:11 ` Yue Wang
2009-05-12 15:02 ` Hans Hagen
2009-05-12 15:12 ` Yue Wang
2009-05-12 15:22 ` Hans Hagen
2009-05-12 15:45 ` Yue Wang
2009-05-13 4:38 ` Yue Wang
2009-05-13 7:49 ` Yue Wang
2009-05-13 8:28 ` Hans Hagen
2009-05-12 15:45 ` Hans Hagen
2009-05-12 14:50 ` Hans Hagen
2009-05-12 15:10 ` Yue Wang
2009-05-12 15:14 ` Taco Hoekwater
2009-05-12 15:41 ` Hans Hagen
2009-05-12 15:49 ` Yue Wang
2009-05-12 15:20 ` Hans Hagen
2009-05-12 15:50 ` Hans Hagen
2009-05-13 8:59 ` Mojca Miklavec
2009-05-13 9:55 ` Mojca Miklavec
2009-05-13 11:12 ` Hans Hagen
2009-05-13 11:17 ` Hans Hagen
2009-05-13 10:02 ` Wolfgang Schuster
2009-05-13 10:17 ` Mojca Miklavec
2009-05-13 10:41 ` Wolfgang Schuster
2009-05-13 11:12 ` Mojca Miklavec
2009-05-13 11:28 ` Wolfgang Schuster
2009-05-13 12:48 ` Thomas A. Schmitz
2009-05-13 12:26 ` Yue Wang
2009-05-13 12:59 ` Hans Hagen
2009-05-13 13:25 ` Wolfgang Schuster
2009-05-12 11:01 ` Wolfgang Schuster
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=68bfdc900905120526h65b0bbd1pb777e9a4eb4ee742@mail.gmail.com \
--to=yuleopen@gmail.com \
--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).