[luatex] Identifying why LuaTeX 2023 is slower than LuaTeX 2022

Max Chernoff mseven at telus.net
Tue Aug 29 09:15:28 CEST 2023


Hi Paulo,

This seems to be an issue with the specific binary packaged in TL, not
with LuaTeX itself. This is what I get:


   Benchmark 1: PATH=/tmp/texlive-testing/2017/bin/x86_64-linux:/bin/ luatex test.tex
     Time (mean ± σ):     132.3 ms ±   8.6 ms    [User: 102.6 ms, System: 29.6 ms]
     Range (min … max):   124.4 ms … 165.2 ms    23 runs
    
   Benchmark 2: PATH=/tmp/texlive-testing/2018/bin/x86_64-linux:/bin/ luatex test.tex
     Time (mean ± σ):     131.5 ms ±   5.5 ms    [User: 100.5 ms, System: 30.8 ms]
     Range (min … max):   123.8 ms … 140.6 ms    23 runs
    
   Benchmark 3: PATH=/tmp/texlive-testing/2019/bin/x86_64-linux:/bin/ luatex test.tex
     Time (mean ± σ):     119.1 ms ±   3.9 ms    [User: 88.7 ms, System: 30.3 ms]
     Range (min … max):   113.4 ms … 127.0 ms    25 runs
    
   Benchmark 4: PATH=/tmp/texlive-testing/2020/bin/x86_64-linux:/bin/ luatex test.tex
     Time (mean ± σ):     119.3 ms ±   3.0 ms    [User: 90.5 ms, System: 28.7 ms]
     Range (min … max):   114.2 ms … 124.1 ms    25 runs
    
   Benchmark 5: PATH=/tmp/texlive-testing/2021/bin/x86_64-linux:/bin/ luatex test.tex
     Time (mean ± σ):     117.4 ms ±   3.8 ms    [User: 87.3 ms, System: 30.0 ms]
     Range (min … max):   111.1 ms … 123.6 ms    26 runs
    
   Benchmark 6: PATH=/tmp/texlive-testing/2022/bin/x86_64-linux:/bin/ luatex test.tex
     Time (mean ± σ):     117.8 ms ±   4.6 ms    [User: 88.9 ms, System: 28.8 ms]
     Range (min … max):   109.8 ms … 130.0 ms    25 runs
    
   Benchmark 7: PATH=/tmp/texlive-testing/2023/bin/x86_64-linux:/bin/ luatex test.tex
     Time (mean ± σ):     118.8 ms ±   4.0 ms    [User: 88.4 ms, System: 30.3 ms]
     Range (min … max):   112.1 ms … 126.0 ms    26 runs
    
   Benchmark 8: PATH=/tmp/texlive-testing/2023-initial/bin/x86_64-linux:/bin/ luatex test.tex
     Time (mean ± σ):     126.9 ms ±   4.5 ms    [User: 96.5 ms, System: 30.3 ms]
     Range (min … max):   120.9 ms … 135.5 ms    23 runs
    
   Benchmark 9: PATH=/tmp/texlive-testing/sys/bin/x86_64-linux:/bin/ luatex test.tex
     Time (mean ± σ):     166.7 ms ±   4.0 ms    [User: 136.5 ms, System: 30.1 ms]
     Range (min … max):   162.5 ms … 175.9 ms    18 runs
    
   Summary
     PATH=/tmp/texlive-testing/2021/bin/x86_64-linux:/bin/ luatex test.tex ran
       1.00 ± 0.05 times faster than PATH=/tmp/texlive-testing/2022/bin/x86_64-linux:/bin/ luatex test.tex
       1.01 ± 0.05 times faster than PATH=/tmp/texlive-testing/2023/bin/x86_64-linux:/bin/ luatex test.tex
       1.01 ± 0.05 times faster than PATH=/tmp/texlive-testing/2019/bin/x86_64-linux:/bin/ luatex test.tex
       1.02 ± 0.04 times faster than PATH=/tmp/texlive-testing/2020/bin/x86_64-linux:/bin/ luatex test.tex
       1.08 ± 0.05 times faster than PATH=/tmp/texlive-testing/2023-initial/bin/x86_64-linux:/bin/ luatex test.tex
       1.12 ± 0.06 times faster than PATH=/tmp/texlive-testing/2018/bin/x86_64-linux:/bin/ luatex test.tex
       1.13 ± 0.08 times faster than PATH=/tmp/texlive-testing/2017/bin/x86_64-linux:/bin/ luatex test.tex
       1.42 ± 0.06 times faster than PATH=/tmp/texlive-testing/sys/bin/x86_64-linux:/bin/ luatex test.tex


The "20xx" binaries are freshly-built versions of the LuaTeX source from
that year, "2023-initial" is the LuaTeX binary initially included with
TL23, and "sys" is the current TL23 LuaTeX binary (there was a mid-year
update this year). All the tests used an up-to-date TL23 tree, with only
the LuaTeX binaries modified. I've attached the full test script.

"2023" (1.01 ± 0.05), "2023-initial" (1.08 ± 0.05), and 
"sys" (1.42 ± 0.06) were all compiled from the same sources (mostly) and
with the same compilers (I think?), so I'm not sure why the current
binaries have such a large regression. Compiler flags maybe? I think
that Karl built the current TL23 binaries ("sys"), so he might know
more.

Thanks,
-- Max


-------------- next part --------------
A non-text attachment was scrubbed...
Name: luatex-speed.sh
Type: application/x-shellscript
Size: 1756 bytes
Desc: 
URL: <https://tug.org/pipermail/luatex/attachments/20230829/4a242961/attachment.bin>


More information about the luatex mailing list.