performace of install-tl (linux)
Karl Berry
karl at freefriends.org
Sun Apr 3 23:36:51 CEST 2022
Hi Harald - Johannes' reply is good system queries.
I have a few more bits to add ...
I'm a bit surprised that I find 4619 tlpobj files while the
installer mentioned 4344 packages.
The platform-specific "subpackages", plus .doc and .source, are all
different .tlpobj files (to avoid having to download them if they are
not desired). For example:
$ pwd
/usr/local/texlive/2022/tlpkg/tlpobj
$ ls fontinst.*
fontinst.doc.tlpobj fontinst.tlpobj
fontinst.source.tlpobj fontinst.x86_64-linux.tlpobj
do you have any idea whats the reason for those extra 12min
installation time (only extracting pkgs) for the install-tl script ?
The installer has to create/update texlive.tlpdb, i.e., consider what is
being installed, not just blindly untar the files. There is a lot of
scaffolding around the tar.
Disk caching and other system stuff could also be a factor. Doing a few
thousand tar commands in a row in a single directory is about the best
possible scenario for caching.
I did not even manage to find tar/xz commands in any perl file in
texlive tree :-(
tlpkg/TeXLive/*.pm
I believe the fundamental untar happens in TLUtils.pm, function untar,
around line 2559.
happy to run more tests & benchmarks,
Thanks. I don't have an exact recipe, but profiling the installer seems
worth a shot.
Install the Devel::NYTProf module (https://metacpan.org/pod/Devel::NYTProf)
and then try running something like:
perl -d:NYTProf install-tl --profile=TLfull-fmt.pro
where TLfull-fmt.pro is attached. A profile file that installs everything
into /tmp/ki, so as not to disturb any real installation. fmts are not
built since we don't care about that here. --best, karl.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: TLfull-fmt.pro
Type: application/octet-stream
Size: 287 bytes
Desc: not available
URL: <https://tug.org/pipermail/tex-live/attachments/20220403/7a9fe7fc/attachment-0001.obj>
More information about the tex-live
mailing list.