Next: , Previous: , Up: Problems running   [Contents][Index]

8.3.8 ‘TeX capacity exceeded

TeX—and by consequence, LaTeX—does not use dynamically allocated memory. Therefore, attempting to produce a very large diagram with the latex_vis backend (see The latex_vis backend) will likely exceed TeX’s hardwired memory capacity:

! TeX capacity exceeded, sorry [main memory size=350001].
\psm@endnode@i ... \endgroup \psm@endmath \egroup
                                                  \use@par \@psttrue
l.489 \task
           {0} & \task{1} \\
No pages of output.

TeX/ LaTeX’s memory capacity can be increased but the mechanism for doing so varies from one TeX distribution to another and is rarely straightforward. See for a few terse pointers. In general, it is best to try to minimize the number of loop repetitions when running programs through the latex_vis backend.

An alternative is to use a prebuilt large-memory latex. Some TeX distributions come with a hugelatex executable, which is just like latex but compiled with larger memory limits. ncptl can be told to use hugelatex by setting the LATEX environment variable (e.g., with ‘env LATEX=hugelatex ncptl …’). This may be the most convenient way to produce complex diagrams with latex_vis when simplifying the run is not an option.

Scott Pakin,