加速 LaTeX 编译

加速 LaTeX 编译

通常我不介意 LaTeX 的编译速度,因为少于 20 页的论文编译速度相当快。但是,我正在处理一个大型文档 - 一份超过 80 页的报告。编译时间开始减慢我的速度。我看到了关于这个主题的几个答案,但我的大多数图形都是外部的,我不使用 Tikz。事实上,除了文本量和所需的布局之外,我不确定是什么减慢了编译速度。

  1. 除了外部化图形和预编译序言之外,您最好的加速技巧是什么?
  2. 我怎么知道是什么导致 TeX 速度变慢?

答案1

小心希腊人送来的礼物......显然,todonotes我使用的漂亮包装拖住了 Tikz,并引入了主要的速度变慢。切换到简单的 marginpars 可以带来不错的加速。需要注意的是,这个包是一个性能特洛伊木马。

答案2

大型文档的页数从 >500 页开始...创建一个运行的脚本:

pdflatex -draftmode file
bibtex file # or biber
makeindex file.idx # if needed
makeindex -s style.gls ...# for glossary if needed
pdflatex -draftmode file
pdflatex file

bibtex/makeindex/...如果只在此区域发生变化时运行,编译速度就会加快。可以diff使用辅助文件进行检测。

答案3

我认为节省时间最有效的方法是避免一次又一次地编译文档。当我们更改几个单词或一个简单的公式时,编译通常不是真正需要的。

对于大型文档,我们可以使用命令将它们拆分成小块\include。然后\includeonly帮助我们编译我们感兴趣的唯一部分,将整个编译留到最后阶段。

对于用 TeX 制作的复杂表格或图形,请先将它们放入单独的 TeX 文件中以验证代码,然后再将它们添加到文档中。

有时编译选项会影响速度。pdflatex -interaction=batchmode foo通常比 快,这样可以避免滚动信息。如果不是最后一轮,pdflatex foo可能会有更多,比如说,xelatex -no-pdf foo比 快。xelatex foo

答案4

我知道的最有用的技巧是:不要同时进行文本更改和布局更改,而是在它们之间做出明确的划分。

我首先修复所有文本问题(该周期内几乎不需要重新编译),之后再担心布局和分页符。这种分离意味着在第二个周期中,我通常可以同时解决多个显示问题。

我知道的第二个最有用的技巧是:购买一台 CPU 更快的计算机。

标题的预编译只会节省一些启动时间,但对连续的页面没有任何作用,因此随着文档的增长,其效果会减弱。

相关内容