[tex4ht] How to increase number of strings ? make4ht-lib: Fatal error. Command htlatex returned exit code 1
Nasser M. Abbasi
nma at 12000.org
Sat Apr 23 02:44:23 CEST 2022
On 4/22/2022 10:11 AM, Michal Hoftich wrote:
> Hi Nasser,
>
>
>> It now compiled the MWE given below. It does take a long
>> time. This is another issue for another email. But tex4ht took
>> 110 minutes to compile this file, (which is empty, but has
>> lots of empty chapters and sections), while lualatex about 2 minutes.
>>
>> Tex4ht is really slow.
>>
>
> The main problem is that your files are so extremely huge. TeX4ht
> needs some extra memory, because it declares link destinations for all
> sections and for each cut page.
>
Hello Michal. Thanks for taking the time to look at the problem.
I understand the document is long. (actually the MWE I gave
is empty, but has lots of chapters/sections/subsections to
show the problem).
But I do have more than enough Physical RAM. This is new PC with one of
the fastest intel CPU and mximum 128 GB RAM.
I monitor the ram all the time as tex4ht is compiling, and
it does not use more than 8GB to 10GB. This below shows the current
RAM compiling with "4" split level, including 2 other tex4ht builds
running at same time in separate terminals:
>free -mh
total used free shared buff/cache available
Mem: 100Gi 8.7Gi 83Gi 0.0Ki 8.4Gi 90Gi
Swap: 26Gi 0B 26Gi
So I am failing to see how is this a physical memory issue at all.
Please help me understand how this is due to memory not available for
tex4ht to compile the document. If tex4ht runs out of memory,
would it not give an error and stop?
>> Now for the issue of losing links.
>>
>> I used this command
>>
>> make4ht -ulm default foo.tex "mathjax,htm,fn-in,4"
>
> Try
>
> make4ht -ulm draft foo.tex "mathjax,htm,fn-in,3"
>
> It will produce separate files for sections, but not for subsections.
> You should save a lot of memory and compilation time using this.
>
Thanks for the suggestion. Yes, this compiles much faster and does
not produce missing links as with "4" instead of "3".
Just to be clear what we are taking about:
===================
>make4ht foo.tex "mathjax,htm,fn-in,4"
Takes over 2 hrs to compile, produces DOM errors
[INFO] make4ht-lib: parse_lg process file: fosu36492.htm
[WARNING] domfilter: DOM parsing of fosu36492.htm failed:
[WARNING] domfilter: ...ive/2021/texmf-dist/tex/luatex/luaxml/luaxml-mod-xml.lua:175: Error Parsing XML [char=5325]
And produces wrong links that leads to no pages as discuessed earlier.
The links go dead after chapter 19, section 3 subsection 93 as
I said before.
>make4ht foo.tex "mathjax,htm,fn-in,3"
Takes only 12 minutes and produces no bad links.
============================
But this difference on its own shows clearly there is a serious problem
in tex4ht in this area.
Why would it take 10 or 20 times longer time to compile when
using "4" vs. "3"?
A little more time is to be expected, but this much longer? May be
the algorithm or data structure used by tex4ht to handle and manage
the splitting is not optimized? Does this mean using "5" will now
take 100 times longer to compile? I am afraid to try :)
I remember you once mentioned the code for splitting in tex4ht
is very old and hard to understand which is something I understand
and appreciate.
This workaround of changing "4" to "3" on this document
can't really be a solution for me. The issue is not how long
it takes to compile. I can wait. If I can get correct pages
generated that loads fast.
The issue is the missing links and missing sections in table
of content and seemingly corrupt pages that show up with large
blank spaces in them which the MWE shows.
I have sections that have many subsections (up to 50 or 100) in
them. Each subsection is also large. Having them all show on same
webpage, means the pages becomes very slow to open. Even
with mathjax for math, which is not practical.
No one will want to browse a website that takes 5 minutes each time
to open a large pages. Also, it harder to browse very
long pages.
That is why I wanted to have each subsection on each separate
and smaller webpage, so they open fast and easier to view.
> Best regards,
> Michal
If you have any other ideas or something I should try, please
feel to let me know. Right now, I am no longer able to build
my long document because of this.
Thanks,
--Nasser
More information about the tex4ht
mailing list.