Imagination PowerVR SDK Blog

what does flush buffer mean in PB manage


“The TBDR solution to this is to flush the render when the buffer fills, which allows the hardware to free memory in the PB associated with objects that are rendered during the flush.”

"Additionally, the hardware has to flush all buffers associated with the render, which means depth and stencil buffers will have to be flushed in addition to the colour buffer. This needs to be done so that successive renders will execute correctly."

Does the flush means to flush the data from on-chip memory to system memory, or just update the on-chip memory?  My understanding is the latter.


Please see this topic for more information


In this situation the deferred step of the render up to the point of the PB being filled must be carried out before the geometry for the entire scene has been gathered. This means that portions of the colour and depth values for the render up to that point must be determined before further geometry can be processed. In addition to the colour buffers per tile, if depth and/or stencil testing is enabled then the stencil and/or depth buffers that usually only need to be maintained on chip for the current tile (i.e. not in main memory) must be stored (and read back) for subsequent tile processing in order to complete the scene. This is the flush that is referred to.

This is a simplified explanation of this situation - the exact details are optimised, confidential and can’t be discussed in this forum.