[tex-k] Fwd: TeXShop/teTeX speed using TeX+ghostscript

Gerben Wierda Sherlock@rna.nl
Thu, 3 Oct 2002 09:27:16 +0200


There was a discussion on the Mac OS X TeX list on the past behaviour 
of TeX on NeXT (which is still lightning fast on 10-year old hardware 
fast compared to TeX on Mac OS X). I asked Tom Rokicki about this. His 
answer is appended below.

I would love to see this return to TeX. It seems a small issue:
1. Make sure the output file is flushed whenever a page is shipped out.
2. Write something to a named pipe to signal a page has been shipped.

The current --ipc implementation seems to be (from the man page) to 
write DVI to a socket. The man page doesn't say what/which socket. I 
would like to know if this is true for pdfTeX also.

I would be interested in knowing if the original mechanism by Tomas 
Rokicki is still there somehow or if people are interested to have this 
added to texk. It would really be great to have this. Also note the 
remark that Tomas made at the end of his mail to me. That, of course, 
is a very interesting feature as well.

G

Begin forwarded message:

> From: "Tomas G. Rokicki" <rokicki@CS.Stanford.EDU>
> Date: Thu Oct 3, 2002  06:01:55 Europe/Amsterdam
> To: Sherlock@rna.nl, rokicki@CS.Stanford.EDU
> Subject: Re: Fwd: [OS X TeX] TeXShop/teTeX speed using TeX+ghostscript
>
> Howdy!
>
> No, I think --ipc would be trivial to implement.  I think it's even
> in teTeX---or it was, at one point.
>
> The only important things are as follows:
>
> 1.  After each page is shipped, make sure that the dvi file is flushed.
> 2.  Write to a named pipe (that's how I did it but I'm sure that there
>     other other ways) indicating the availability of a new page and
>     the corresponding "new" eof in the dvi file.
> 3.  Modify the previewer to never read the dvi file past this eof,
>     and make it be prepared to deal with the new eof information.
>
> It's actually quite simple to do.
>
> Now, looking at teTeX, it looks like they have a different way of
> doing it---sending the dvi info to a socket.  This, to me, while
> workable, isn't perfect; I'd rather just pull the bytes directly
> from the dvi file that TeX is already writing.  But that's just me.
>
> I'd be happy to discuss this with anyone interested in implementing it.
> I did it for both the Amiga and the NeXT, and it does make a
> significant difference.
>
> [So does preloading the format file, and "reloading" it from memory
> rather than from disk by understanding what parts are mutable and
> which are not, which allows you to reTeX almost instantly, and gives
> you lightning-TeX like features pretty easy, but that's a different
> topic . . .]
>
> -tom
>