On 07/18/2013 12:31 AM, Kenneth Graunke wrote:
On 07/17/2013 04:46 PM, Chad Versace wrote:
Set MOCS to L3_CACHEABLE for the following packets, during the normal
draw upload path and during blorp:
     3DSTATE_CONSTANT_PS
     3DSTATE_CONSTANT_VS
     3DSTATE_DEPTH_BUFFER
     3DSTATE_HIER_DEPTH_BUFFER
     3DSTATE_STENCIL_BUFFER
     3DSTATE_VERTEX_BUFFERS
     CMD_STATE_BASE_ADDRESS
     SURFACE_STATE

It's not possible to set the MOCS of the MCS buffer, because the MCS
inherits MOCS from the parent surface.

Gives +5.68% on Xonotic 1920x1080 on Haswell GT2.

At this point, I'm quite happy to accept your choices of what to cache.

Two comments:

I'd really prefer to see each change split into a separate patch.  You don't 
need to benchmark them separately or
anything, but it'd be nice. I know Eric had hoped to see this happen as well.

I considered that, but hesitated. I agree, such a patch series will be nicer. 
V3 coming soon.

I'd also prefer to see:

   uint32_t mocs = brw->is_haswell ? GEN7_MOCS_L3 : 0;

rather than if-blocks...it's just more concise.  Not a big deal either way, 
though.

Sure. The if-blocks were an artifact of a more complex experiment I was doing. 
But,
now that the MOCS settings are so simple, there's no longer a need for the 
if-block.

_______________________________________________
mesa-dev mailing list
mesa-dev@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/mesa-dev

Reply via email to