I have a machine with four processors running Ubuntu/Tex-Live. Tex
only uses one processor. Are there any implementations that use more
than one so that I can speed up compilation?
Thanks,
J.
TeX is essentially sequential. But you might be able to construct a
Makefile that partitions the document into components which could be
processed concurrently using make -j 4 .
Bob T.
Jonathan Kew told me that XeTeX (which is an extension of TeX, not an
implementation of TeX) effectively pipes typeset output into PDF
generation internally, and so (as I recall) it would take advantage of a
multiprocessor machine.
Bob Tennent is I think completely right regarding TeX. (By the way,
Donald Knuth asks us in very strong terms not to use the name TeX for
typesetting programs other than TeX - such as pdfTeX, XeTeX, LuaTeX and
so forth.)
--
Jonathan
don't you find "pdf" "Xe" and "Lua" somewhat lacking as program names?
--
Robin Fairbairns, Cambridge
Fine names they are. Anyway, I suppose that Knuth had plenty of
opportunity to berate Han The Than for his choice of name in Pont à
Mousson.
--
David Kastrup
As far as I know, Donald Knuth has not expressed an objection to
programs being called pdfTeX, XeTeX and LuaTeX.
What he did say was:
===
[A]ny person or group who wants to produce a program superior to mine is
free to do so. However, nobody is allowed to call a system TeX or
METAFONT unless that system conforms 100% to my own programs [...]
===
He then went on to say
===
I sincerely hope that the members of TUG will help me enforce these
wishes, by putting severe pressure on any person or group who produces
any incompatible system and calls it TeX or Metatfont or Computer Modern
--- no matter how slight the incompatibility might seem.
===
This is, in his own words, what Knuth asked of us. For myself, when I
use the word 'TeX' to refer to a typesetting program, I mean the program
that Donald Knuth so generously wrote for us.
--
Jonathan
In my book, there is a difference between "any person or group who
produces any incompatible system and calls it TeX or Metatfont or
Computer Modern" and "any person or group who uses the term TeX or
METAFONT in informal communication in reference to something
encompassing also incompatible systems".
There is a difference between naming something and talking about it.
One can refer to somebody as Dick, even when the birth certificate is
actually listing "Richard". And if this person tells you "you can call
me Dick", he is not guilty of fraudulent assumption of identities or
whatever you want to call it.
I mean, Knuth himself talks all the time about "TeX" and actually uses
pdfTeX most of the time.
--
David Kastrup
> In my book, there is a difference between "any person or group who
> produces any incompatible system and calls it TeX or Metatfont or
> Computer Modern" and "any person or group who uses the term TeX or
> METAFONT in informal communication in reference to something
> encompassing also incompatible systems".
The first quote is, of course, from Don Knuth. The second 'quote', I
believe, is not a quotation but is something you just wrote.
Yes, of course there is a difference. And as I said, but you did not
quote, when I use 'TeX' to refer to a typesetting program, I mean the
program that Donald Knuth wrote. I encourage you, and all other users
of TeX and similar programs to do the same.
My concern is that 'TeX' becomes a generic term for any typesetting
program derived from the TeX program that Donald Knuth wrote. Just as
Xerox is concerned should xerox become a generic term for photocopy.
To create a new program and call it betterTeX, and to then refer to it
'informally' as TeX is against the spirit if not the letter of Knuth's
wishes.
[Richard and Dick snipped. Ouch!]
> I mean, Knuth himself talks all the time about "TeX" and actually uses
> pdfTeX most of the time.
Just out of interest, how do you know this?
--
Jonathan
> David Kastrup wrote:
>
>> In my book, there is a difference between "any person or group who
>> produces any incompatible system and calls it TeX or Metatfont or
>> Computer Modern" and "any person or group who uses the term TeX or
>> METAFONT in informal communication in reference to something
>> encompassing also incompatible systems".
>
> The first quote is, of course, from Don Knuth. The second 'quote', I
> believe, is not a quotation but is something you just wrote.
>
> Yes, of course there is a difference.
Fine.
--
David Kastrup
amazing use of the subjunctive, in the context of something that
happened long ago.
>To create a new program and call it betterTeX, and to then refer to it
>'informally' as TeX is against the spirit if not the letter of Knuth's
>wishes.
but no-one but the terminally stupid is confused, any more than they
are about the use of "xeroxing" for xerography (as opposed to the
previous, highly unsatisfactory, forms of photocopying)[*], or
"hoovering" for vacuum cleaning.
>> I mean, Knuth himself talks all the time about "TeX" and actually uses
>> pdfTeX most of the time.
>
>Just out of interest, how do you know this?
i know he expended substantial effort in the development of pdftex,
but i didn't know he used it. (after all, all the distributors
carefully provide a "tex" executable that has no extensions,
ostensibly for don's benefit.)
things like pdftex are exactly the species that don mused about in his
session at tug 95, wondering why it was that so few people had (then)
produced tex extensions.
[*] dealing with my father's papers, after he died, i found a folded-
up newspaper page describing how the xerox corporation's new machines
was going to revolutionise the office of the future. they also made
xerox a big time paper selling outfit (aiui, they get most of their
income that way).
--
Robin Fairbairns, Cambridge
Well I was entertained and I hope you were too. What size documents do
you work with that require concurrent processing? On a modern computer,
even using just one core, a whole book is typeset in about 10 seconds.
And if you use includeonly, you hardly ever have to process an entire
document. Use your other cores for other tasks.
Bob T.
Yes, I was. They're basically lecture notes in the form of a book
with lots of pgf/tikz graphs. I add a bit every day or two and upload
the whole thing onto the course website. It takes about 43 CPU
seconds to compile on a fast machine, long enough to be annoying (and
a bit longer every time). I guess I could compile the graphs
separately and import them.
Thanks again,
J.
pgf/tikz is computationally costly. Pstricks is faster but it's likely
too late to change now. Use the techniques I suggested: includeonly and
a Makefile to build disjoint parts concurrently.
Bob T.
Joris,
not exactly a TeX-based solution, but have you considered dividing
your notes up into chapters (or groups of chapters)? Then (depending
on how you do things) you might only need to update your most recent
chapter or group of chapters.
I've been doing this for a while now, starting a new group of chapters
when I find the time to run TeX starts getting annoying. And my
annoyance level is far less than your 43 seconds :-)
The other benefit is your students will only need to d/l the most
recent chapter when you do updates.
Cheers.
Jim
You can also use the cool new "externalization" capabilities
present in very recent pgf/tikz versions...
-- m
pdfTeX is expressive of its function. I have no objections to that.
XeTeX is kind of difficult to pronounce for a non-native speaker of
English, but as a mathematician, I can say it is as symmetric as a
word gets. :)
My special objections are to LuaTeX. It is so easy to confuse it with
LaTeX. Think in term of the novice. I am usually in a position to
promote and teach LaTeX to people who have used nothing but Word, and
they get confused by the distinction between TeX and LaTeX, or even
worse, they think MikTeX is a rival of LaTeX. :)
Emre Sermutlu
you could try and complain to hans hagen et al. i can confidently
predict that they will at worst ignore you (they almost certainly
won't be rude, but they won't act on your suggestion..)
luatex has sufficient momentum behind it that it's as unlikely to
change. it may appear under the hood, in the future, when you ask for
"latex" -- that's already happening with pdftex: all current
distributions us pdftex whether you ask for latex or pdflatex: the
only difference is the default output switch.
--
Robin Fairbairns, Cambridge
I just wanted to follow up on the many useful suggestions you have
made. I've used pgf externalization and the 43 second compilation
time has gone down to 2.5 seconds!!!! Thank you all very much.
Best,
J.
You should really be thanking the PGF/Tikz team, really.
Their work is simply amazing.
-- m
Most notably, parallelizing to all cores would never have gained you a
factor of 20 :)
And imagine how it will be on quantum computer?:)