Re: Tilesort generates needed network traffic?
Brian Paul <[email protected]>
| Newsgroups | gmane.comp.graphics.chromium.user |
|---|---|
| Message-ID | <[email protected]> |
James Supancic wrote:
> >Why do you say that? Line 87 of tilesortspu_swap.c is a call to
> >crPackSwapBuffers().
>
> Opps, I was mis-reading my debuger ouptut.
>
> I am also a bit confused about this. tilesortspu_SwapBuffer calls this
> function:
> void PACK_APIENTRY crPackSwapBuffers( GLint window, GLint flags )
> {
> GET_PACKER_CONTEXT(pc);
> unsigned char *data_ptr;
> (void) pc;
> GET_BUFFERED_POINTER( pc, 16 );
> WRITE_DATA( 0, GLint, 16 );
> WRITE_DATA( 4, GLenum, CR_SWAPBUFFERS_EXTEND_OPCODE );
> WRITE_DATA( 8, GLint, window );
> WRITE_DATA( 12, GLint, flags );
> WRITE_OPCODE( pc, CR_EXTEND_OPCODE );
> }
>
> to put the SwapBuffers command into the buffer, and it eventually
> invokes tilesortspuSendServerBufferThread once per server to send the
> buffers?
Right.
> In the tilesortspuSendServerBufferThread function it looks as if each
> server has its own buffer, but crPackSwapBuffers looks like it is just
> writting to one buffer? Am I missing something? Does crPackSwapBuffers
> get called more than once? Is it somehow packing multiple buffers? Is
> there a global buffer that is somehow combined with server specific
> buffers at time of send?
In the case of the loop over tilesortspuSendServerBuffer(), we're
sending the contents of the same buffer to all servers.
There's a number of different packing buffers in the Tilesort SPU.
Some hold geometry commands and are sent to one or more servers. Some
buffers contain state-change commands and are sent to individual servers.
The code is pretty complicated since it's evolved a lot over the
years. It would be nice to overhaul it someday.
-Brian
-------------------------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642