1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
|
% ------------------------ ------ ------------------ ------------------------
% 2019-12-17 32bit 64bit 2020-01-10 32bit 64bit 2020-11-30 32bit 64bit
% ------------------------ ------------------------ ------------------------
% freebsd 2270k 2662k freebsd 2186k 2558k freebsd 2108k 2436k
% openbsd6.6 2569k 2824k openbsd6.6 2472k 2722k openbsd6.8 2411k 2782k
% linux-armhf 2134k linux-armhf 2063k linux-armhf 2138k 2860k
% linux 2927k 2728k linux 2804k 2613k linux (?) 3314k 2762k
% linux-musl 2532k 2686k
% osx 2821k osx 2732k osx 2711k
% ms mingw 2562k 2555k ms mingw 2481k 2471k ms mingw 2754k 2760k
% ms intel 2448k
% ms arm 3894k
% ms clang 2159k
% ------------------------ ------------------------ ------------------------
%
% performance of mingw and native are getting close (small win for mingw) but
% clang bins are still slower .. quite inconsistent differences between 32 and
% 64 bit (not all compilers are the same version)
% \loggingall
% \tracingonline \zerocount
% \tracingmacros \plusone
% \enableautoglyphscaling % saves only a few instances ... no gain .. a few pages more
% \enabletexdirective{vspacing.experimental}
% \nopdfcompression
% 20200509 : 258 pages
%
% my 2013 i7 laptop with windows : 11.8 sec mingw64
% raspberry pi 64 bit with ssd : 39.5 sec gcc 9.2
% idem with native bin : 38.5 sec
% idem overclocked f=2000/v=6 : 31.5 sec
%
% 20200526 : 258 pages
% mingw all in: 10.9 / rpi 32 bit: 33.1
% 20200610 : 258 pages
% mingw all in: 10.6
% 20201204 : 260 pages
% mingw all in: 10.0
% 20201204 : 262 pages
% mingw all in: 9.9
% 20200720 : 258 pages / all in
%
% mingw : 10.6 (sometimes less)
% rpi 32 : 32.3
% rpi 64 : 26.0 (overclocked)
% amd 10 fitlet : 28.2
% But speed can differ a bit per compilation (upto .5 seconds maybe due to how
% compiled code is organized which might influence caching. Who knows ... (or
% cares). For instance at 20200407 I measured 10.9 seconds after some new low level
% metapost magic was added but who knows if that was the reason, because mp
% processing is already fast. A week later, at 20200415, a by then 254 page file
% took 10.5 seconds, that is, we were at exactly 24 pages per second but after
% switching to gcc9 it dropped again. In december 2020, with IPO enabled I crossed
% the 26 pps barrier and went below 10 seconds but that was also after some further
% cleanup in \LMTX.
% msvc 1899k (2% slower than mingw)
% msvc /GL 2297k (similar to mingw)
% msvc /GL /Ob3 2847k (not faster than /GL)
% msvc /Ob3 2052k (slower than /Ob2)
% msvc /Ob1 1763k (slower than /Ob2)
% clang 2460k (15% slower than mingw)
% Thanks to sebastian.miele@gmail.com for close reading the manual and sending
% fixes.
% \listcallbackmode0
% 290 pages, 10.8 sec, 292M lua, 99M tex, 158 instances
% 290 pages, 9.5 sec, 149M lua, 35M tex, 30 instances
% with mimalloc and msvc we get a better native performance than crosscompiled
\enableexperiments[fonts.compact]
% \enabledirectives[fonts.injections.method=advance] % tricky ... not all xoffsets are advance robust
\pushoverloadmode \unprotect
% test code
\protect \popoverloadmode
\enabletrackers[system.usage=summary]
\environment luametatex-style
\environment luametatex-private
\startdocument
[manual=LuaMeta\TeX,
%status=experimental,
version=\cldcontext{status.luatex_verbose}]
\component luametatex-titlepage
\component luametatex-firstpage
\startfrontmatter
\component luametatex-contents
\component luametatex-introduction
\stopfrontmatter
\startbodymatter
\component luametatex-internals
\component luametatex-differences
\component luametatex-modifications
\component luametatex-lua
\component luametatex-enhancements
\component luametatex-fonts
\component luametatex-languages
\component luametatex-math
\component luametatex-nodes
\component luametatex-callbacks
\component luametatex-tex
\component luametatex-metapost
\component luametatex-pdf
\component luametatex-libraries
\component luametatex-primitives
\stopbodymatter
\startbackmatter
% \component luametatex-rejected % local file
\component luametatex-codes
\component luametatex-registers
\component luametatex-statistics
\component luametatex-remarks
\stopbackmatter
\stopdocument
|