Re: Tilesort generates needed network traffic?

Brian Paul <[email protected]>
Newsgroups gmane.comp.graphics.chromium.user
Message-ID <[email protected]>
James Supancic wrote:
> Tilesort generates needed network traffic?
> 
> I have four Render SPUs and one Tilesort SPU. I have noticed that some 
> applications run slowly when they are rendering only to the local Render 
> SPU (ig. application, tilesort and render SPU are all on one host) while 
> at the same time using little CPU time. I replaced the 3 Render SPUs on 
> remote hosts with NOP SPUs on the localhost and found that CPU 
> consumption went up to 100% and applications ran faster. Suspecting that 
> something about the remote Render SPUs might be slowing down local 
> rendering I inserted a Print SPU on one of the remote nodes (note that 
> the applications window is only on the local X server, none of the 
> remote X server/Render SPUs should be used).
> 
> I ran the atlantis text program and got this output:
> LoadIdentity(  )
> MatrixMode( GL_PROJECTION )
> LoadMatrixf( [      1.37        0.00        0.00        0.00
>                     0.00        2.75        0.00        0.00
>                     0.00        0.00       -1.05       -1.00
>                     0.00        0.00   -20512.82        0.00  ] )
> MatrixMode( GL_MODELVIEW )
> MatrixMode( GL_MODELVIEW )
> PushMatrix(  )
> LoadIdentity(  )
> PopMatrix(  )
> MatrixMode( GL_MODELVIEW )
> Clear( 0x4100 )
> LoadIdentity(  )
> SwapBuffers( 1, 0 )
> MakeCurrent( 1, 0, 1 )
> LoadIdentity(  )
> MatrixMode( GL_PROJECTION )
> LoadMatrixf( [      1.37        0.00        0.00        0.00
>                     0.00        2.75        0.00        0.00
>                     0.00        0.00       -1.05       -1.00
>                     0.00        0.00   -20512.82        0.00  ] )
> MatrixMode( GL_MODELVIEW )
> MatrixMode( GL_MODELVIEW )
> PushMatrix(  )
> LoadIdentity(  )
> PopMatrix(  )
> MatrixMode( GL_MODELVIEW )
> Clear( 0x4100 )
> LoadIdentity(  )
> SwapBuffers( 1, 0 )
> MakeCurrent( 1, 0, 1 )
> LoadIdentity(  )
> MatrixMode( GL_PROJECTION )
> LoadMatrixf( [      1.37        0.00        0.00        0.00
>                     0.00        2.75        0.00        0.00
>                     0.00        0.00       -1.05       -1.00
>                     0.00        0.00   -20512.82        0.00  ] )
> MatrixMode( GL_MODELVIEW )
> MatrixMode( GL_MODELVIEW )
> PushMatrix(  )
> LoadIdentity(  )
> PopMatrix(  )
> MatrixMode( GL_MODELVIEW )
> Clear( 0x4100 )
> LoadIdentity(  )
> SwapBuffers( 1, 0 )
> MakeCurrent( 1, 0, 1 )
> LoadIdentity(  )
> MatrixMode( GL_PROJECTION )
> LoadMatrixf( [      1.37        0.00        0.00        0.00
>                     0.00        2.75        0.00        0.00
>                     0.00        0.00       -1.05       -1.00
>                     0.00        0.00   -20512.82        0.00  ] )
> MatrixMode( GL_MODELVIEW )
> MatrixMode( GL_MODELVIEW )
> PushMatrix(  )
> LoadIdentity(  )
> PopMatrix(  )
> 
> The Tilesort SPU is clearly sending data to the remote Render SPUs. Why? 
> I am using the Test All Tiles bucket mode, I am using auto_dlist_bbox, 
> lazy_send_dlists, and dlist_state_tracking. Why is this data being sent? 
> How can I eliminate it?

I think the state tracker's matrix-related code needs to be reviewed. 
  I've noticed this too, but it doesn't seem to effect all applications.

The atlantis demo does call glMatrixMode() and sets the modelview and 
projection matrices on every frame but the state tracker should filter 
out those redundant calls.

I won't have time to look into this anytime soon, unfortunately.

-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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.