Thread (22 messages) flat view 22 messages, 8 authors, 2020-10-05

Re: [PATCH 0/3] drm: panfrost: Coherency support

From: Steven Price <steven.price@arm.com>
Date: 2020-09-17 11:02:35
Also in: dri-devel, linux-amlogic, linux-iommu

On 17/09/2020 11:51, Tomeu Vizoso wrote:
On 9/17/20 12:38 PM, Steven Price wrote:
quoted
On 16/09/2020 18:46, Rob Herring wrote:
quoted
On Wed, Sep 16, 2020 at 11:04 AM Alyssa Rosenzweig
[off-list ref] wrote:
quoted
quoted
So I get a performance regression with the dma-coherent approach, 
even if it's
clearly the cleaner.
That's bizarre -- this should really be the faster of the two.
Coherency may not be free. CortexA9 had something like 4x slower
memcpy if SMP was enabled as an example. I don't know if there's
anything going on like that specifically here. If there's never any
CPU accesses mixed in with kmscube, then there would be no benefit to
coherency.
The DDK blob has the ability to mark only certain areas of memory as 
coherent for performance reasons. For simple things like kmscube I 
would expect that it's basically write-only from the CPU and almost 
all memory the GPU touches isn't touched by the CPU. I.e. coherency 
isn't helping and the coherency traffic is probably expensive. Whether 
the complexity is worth it for "real" content I don't know - it may 
just be silly benchmarks that benefit.
Or maybe it's only a problem for applications that do silly things? I 
don't think kmscube was ever optimized for performance.
Well doing silly things is almost the definition of a benchmark ;) A lot 
of the mobile graphics benchmarks suffer from not being very intelligent 
in how they render (e.g. many have meshes that are far too detailed so 
the triangles are smaller than the pixels).

Of course there are also applications that get things wrong too.

Steve

_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help