On Wed, Jun 1, 2016 at 2:57 PM, Marek Olšák <mar...@gmail.com> wrote: > Hi, > > This is version 2 of the previous series. This time it's been tested!! > > Tested cards: > - RV670 > - RV730 > - EG/REDWOOD > - CAYMAN > > This patch series: > - fixes several bugs around making 3D and CP DMA idle with respect to CP.PFP, > which allows removing a lot of cache flushes (= hacks really) and IB flushes > around CP DMA > - removes unnecessary cache flushes > - moves other cache flushes to places where their frequency is lower > > From the perspective of functions: > - binding shader resources doesn't flush anything (why should it) > - set_framebuffer_state flushes CB, DB, TC > - CP DMA copy_buffer only flushes TC, VC, KC. Never CB or DB. > - CP DMA clear_buffer only flushes TC, VC, KC when shader coherency is > requested, or CB when CB coherency is requested. Never DB. > - fast color clear no longer flushes TC, VC, KC, DB. (implied by clear_buffer) > - ending streamout newly flushes TC, VC, KC > > From the perspective of caches: > - TC is flushed only by set_framebuffer_state, texture_barrier, before > CP DMA (except fast color clear), and after streamout > - VC & KC are flushed only before CP DMA (except fast color clear) or after > streamout > - CB is flushed by set_framebuffer_state or by fast color clear > - DB is only flushed by set_framebuffer_state > > More testing may be needed, especially testing on GPUs not listed above. > > Also available here: > https://cgit.freedesktop.org/~mareko/mesa/log/?h=r600-opt-flushes > > Please review.
For the series: Reviewed-by: Alex Deucher <alexander.deuc...@amd.com> _______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/mesa-dev