[Mesa-dev] [PATCH 00/14] RadeonSI: SDMA texture copy rewrite

Marek Olšák maraeo at gmail.com
Wed May 4 23:43:29 UTC 2016


Hi,

This patch series completely rewrites texture copying with SDMA for CIK & VI. It only uses the "partial" copy packets, which makes it a lot simpler (one packet per layered/3D copy). Most of the complexity is in handling hw limitations, but luckily the SDMA path can be used in the majority of cases.

On top of that, the DMA IB support is improved thanks to extensive testing and benchmarking.

This is only enabled on VI for now. It can be enabled on CIK after enough testing is done.

There is one more hardware limitation that can cause VM faults with T2L copies and needs a workaround. The exact workaround is still under discussion, but I think this is good enough for review already.

On Tonga, it beats the 3D engine in texture upload performance by 0-80%. On APUs, the performance is mixed or slightly worse. The reason may be that the 3D engine uses less bandwidth thanks to DCC.

The fact that SDMA can't do DCC compression can be detrimental to texturing performance on VI. The impact hasn't been measured yet.

Texture uploads still use 2 copies (user memory -> linear, linear -> tiled). Merging those 2 copies into 1 is not done in this series.

Please review and opinions on the DCC issue are welcome,

Marek


More information about the mesa-dev mailing list