mmoore@saturn.ucsc.edu (Matthew Moore) (08/23/88)
We have an IRIS 4D-50GT. We have some large application programs that we ported up from the 3000's, and many of them open and control multiple windows from a single process. Our problem is that the windows are opened in double buffer mode, drawn into, and swapped. On the 4D you have to call swapbuffers() for each window individually, and this hangs the calling process until the next Vsync interval. Thus our programs are running much slower on the 4D than they did on the 3000 (at least for simple window contents) because it takes a minimum of n full-screen times to update the n windows being controlled by a single process, even if very little time is spent drawing into each window. A long-term solution would be to have a seperate process responsible for each window, but this would increase the overhead from process switching and the maintenance of the concurrent environment. Besides which, these are rather large programs and we would like to use them pretty much as is. Is there any way to issue a non-blocking swapbuffers() call? Or any way to have a single process update several double-buffered windows and then go back and swap them all in the same Vsync interval? Or does anyone have another way around this? thanks; matt moore U Cal Santa Cruz (408)-429-2565 mmoore@saturn.ucsc.edu (Arpanet) {wherever}!ucbvax!ucscc.ucsc.edu! saturn.ucsc.edu!mmoore (UUCP)