[tug-summer-of-code] Parallel and daemon extensions to TeX

Jonathan Fine jfine at pytex.org
Sun Mar 8 08:17:51 CET 2009

Hello Kittipat

Karl Berry wrote:
>     I also have an idea to propose. In short, the idea is parallel
>     version of TeX. My plan is to use OpenMP for parallelization. It
>     should make TeX run faster without much more complication in the
>     code base. Please give me some thoughts.
> The basic TeX code is monolithic and relies almost entirely on global
> variables.  There have been some discussions of parallelizing certain
> small parts of the code, such as the output routine, but even this is
> fraught with extreme difficulty.  I am not sure what can be usefully
> parallelized.

I agree with Karl's assessment, and have another comment. 
Multi-processor machines can make a speed up on processes that can be 
pipelined.  For example, XeTeX sets up separate processes for 
typesetting (source to xdv = extended dvi) and generating PDF.

But here's another suggestion you might like.  MathTran runs TeX as a 
daemon, by using pipes on Unix/Linux.  This has problems, and does not 
work on Windows.  How about writing a patch that extends TeX so that it 
can run as a daemon on Windows.

This would require you to learn Pascal/C programming skills and obtain 
some familiarity with the source of TeX, if you don't have these already.

> Also, in terms of doing this as a student, the people whom I can think
> that would be suitable mentors have said they unfortunately don't have
> time to mentor anything this year.

This is a problem.  Although I am very keen to see this happen, I'm not 
sure that this is something I'd be able to mentor.


More information about the summer-of-code mailing list