[Mesa-dev] [PATCH 00/26] RadeonSI: Primitive culling with async compute

Dieter Nützel Dieter at nuetzel-hh.de
Wed Feb 13 16:02:43 UTC 2019


GREAT stuff, Marek!

But sadly some crashes.
Is my LLVM git version to old?
7. Jan 2019 (short before 8.0 cut)

LLVM (http://llvm.org/):
   LLVM version 8.0.0svn
   Optimized build.
   Default target: x86_64-unknown-linux-gnu
   Host CPU: nehalem

   Registered Targets:
     amdgcn - AMD GCN GPUs
     r600   - AMD GPUs HD2XXX-HD6XXX
     x86    - 32-bit X86: Pentium-Pro and above
     x86-64 - 64-bit X86: EM64T and AMD64

Please have a look at my post @Phoronix:
https://www.phoronix.com/forums/forum/phoronix/latest-phoronix-articles/1079916-radeonsi-picks-up-primitive-culling-with-async-compute-for-performance-wins?p=1079984#post1079984

Thanks,
Dieter

Am 13.02.2019 06:15, schrieb Marek Olšák:
> Hi,
> 
> This patch series uses async compute to do primitive culling before
> the vertex shader. It significantly improves performance for 
> applications
> that use a lot of geometry that is invisible because primitives don't
> intersect sample points or there are a lot of back faces, etc.
> 
> It passes 99.9999% of all tests (GL CTS, dEQP, piglit) and is 100% 
> stable.
> It supports all chips all the way from Sea Islands to Radeon VII.
> 
> As you can see in the results marked (ENABLED) in the picture below,
> it destroys our competition (The GeForce results are from a Phoronix
> article from 2017, the latest ones I could find):
> 
> Benchmark: ParaView - Many Spheres - 2560x1440
> https://people.freedesktop.org/~mareko/prim-discard-cs-results.png
> 
> 
> The last patch describes the implementation and functional limitations
> if you can find the huge code comment, so I'm not gonna do that here.
> 
> I decided to enable this optimization on all Pro graphics cards.
> The reason is that I haven't had time to benchmark games.
> This decision may be changed based on community feedback, etc.
> 
> People using the Pro graphics cards can disable this by setting
> AMD_DEBUG=nopd, and people using consumer graphics cards can enable
> this by setting AMD_DEBUG=pd. So you always have a choice.
> 
> Eventually we might also enable this on consumer graphics cards for 
> those
> games that benefit. It might decrease performance if there is not 
> enough
> invisible geometry.
> 
> Branch:
> https://cgit.freedesktop.org/~mareko/mesa/log/?h=prim-discard-cs
> 
> Please review.
> 
> Thanks,
> Marek
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/mesa-dev


More information about the mesa-dev mailing list