简短的摘要

简短的摘要

我想加快我的乳胶文档的构建速度,并且好奇在构建文档时是否可以使用我的所有四个处理器核心。

Windows 用户说明,但我还没有找到任何适合 Linux 用户的。

答案1

TeX 引擎是单线程的,因此无法将负载分配到多个核心。TeX 处理通常需要运行外部程序(biber、bibtex、makeindex),但由于它们需要 TeX 生成的文件并将其结果作为文件发送到 TeX,因此您在这里也无法做太多事情。

不过,多核机器还是有优势的:如果你的编辑器(或 TeXStudio)在一个核上运行,而 TeX 引擎在另一个核上运行,那么速度会更快。不过,这通常是由你的操作系统自动完成的,对你来说是透明的。

另一种情况是使用或处理rnw文档。虽然 R 也是单线程的,但它可以使用包并行计算。这可以大大加快 R 部件的速度。knitrSweavemulticore

答案2

pgf-手册描述了一种使用多个核心并行处理 tikzpictures 的方法:有关/tikz/external/mode详细信息,请参阅条目。

简短的摘要

您首先需要通过在序言中包含以下内容来外部化 tikzpictures 的创建:

\usetikzlibrary{external}
\tikzset{external/mode=list and make}

(看这个答案,并且这个答案如果你使用 AucTeX)

这将在您的工作目录中为每个 tikzpicture 创建几个辅助文件。您可能希望将这些辅助文件保存在单独的子目录中,如下所示:

  \tikzexternalize[prefix=figures/]

请注意,指定的子目录需要存在。

现在你可以用下面的例程进行编译:

%step 1: generate main.makefile:
pdflatex main
% step 2: generate ALL graphics on 2 processors:
make -j 2 -f main.makefile
% step 3: include the graphics:
pdflatex main

相关内容