[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Microtype and texinfo.tex performance
From: |
Gavin Smith |
Subject: |
Microtype and texinfo.tex performance |
Date: |
Wed, 28 Dec 2022 11:16:12 +0000 |
In the last couple of days I have been looking into texinfo.tex performance.
I have gained some quite significant speedups by changing the "dummies"
that are written to auxiliary files be activated with a conditional rather
by redefining them with \def.
I have tested it on several manuals, but this is quite a major change
so could do with more testing.
I ran the tests below in a test directory, after running texi2pdf enough
times that TeX would only be run once. The reported times were typical
on my system after I ran the commands enough time so that disk caches
were hot.
BEFORE CHANGES with texinfo.tex 2022-12-26.11 [git 38e7fa90fadaecdc645d]
$ time texi2pdf ../../emacs-lispref-27.2/elisp.texi
real 0m7.394s
user 0m7.167s
sys 0m0.131s
$ time texi2pdf ../../groff.texi
real 0m1.890s
user 0m1.746s
sys 0m0.131s
$ time texi2pdf ../../m4.texi
real 0m0.893s
user 0m0.798s
sys 0m0.090s
AFTER CHANGES with texinfo.tex 2022-12-28.00 [git ff79a7b0ba33e1c48].
$ time texi2pdf ../../emacs-lispref-27.2/elisp.texi
real 0m6.274s
user 0m5.980s
sys 0m0.197s
$ time texi2pdf ../../groff.texi
real 0m1.562s
user 0m1.447s
sys 0m0.122s
$ time texi2pdf ../../m4.texi
real 0m0.845s
user 0m0.698s
sys 0m0.119s
As you can see, there is about a 15% speedup - this will vary depending
on the size of the manual and how much it used index entries and
cross-references.
I found that microtypograpic formatting also slows down the run a lot.
When I turned this off, I got the following results:
MICROTYPE OFF
$ time texi2pdf ../../emacs-lispref-27.2/elisp.texi
real 0m4.220s
user 0m3.939s
sys 0m0.174s
$ time texi2pdf ../../groff.texi
real 0m1.306s
user 0m1.234s
sys 0m0.082s
$ time texi2pdf ../../m4.texi
real 0m0.620s
user 0m0.542s
sys 0m0.081s
Relative to the base, turning microtype off produces a further 10-25% decrease
in execution time.
Microtype output looks great but having faster processing runs will
really make a difference for users too, helping them to work on their
manuals more. I think we should turn microtype off by default.
- Microtype and texinfo.tex performance,
Gavin Smith <=