[PATCH v3 0/3] Ring padding micro-optimisation etc
Tvrtko Ursulin
tursulin at igalia.com
Mon Dec 23 16:39:10 UTC 2024
From: Tvrtko Ursulin <tvrtko.ursulin at igalia.com>
I have finally rebased my old series from July and October on top of the similar
approach Sunil landed in October but limited to GFX rings.
This covers SDMA and VPE (as an outlier, because it uses the same helper), plus
contains a patch to cache the SDMA instance in the ring since I've noticed the
constant use of amdgpu_sdma_get_instance_from_ring() from SDMA vfuncs looked a
bit lazy. And again, also to use the same approach, memset32 for IB padding.
I don't know what is the maximum padding for SDMA but at least on the Steam
Deck 10 dwords seems rather typical, so that, coupled with the fact it is just
nicer to use the same approach across the rings, I thought it makes sense to do
this.
For now I have dropped the patch which added the memset64 based padding for UVD,
JPEG and VCN rings. I can re-surface that one later if people will be
interested.
Cc: Christian König <christian.koenig at amd.com>
Cc: Sunil Khatri <sunil.khatri at amd.com>
Tvrtko Ursulin (3):
drm/amdgpu: Use memset32 for padding IB ring
drm/amdgpu: Use efficient ring padding with more rings
drm/amdgpu: Cache SDMA instance and index in the ring
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.c | 56 +++++++++++++++++++-----
drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h | 7 +++
drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.c | 39 ++---------------
drivers/gpu/drm/amd/amdgpu/amdgpu_sdma.h | 3 --
drivers/gpu/drm/amd/amdgpu/amdgpu_vpe.c | 16 ++++---
drivers/gpu/drm/amd/amdgpu/cik_sdma.c | 19 ++++----
drivers/gpu/drm/amd/amdgpu/sdma_v2_4.c | 20 +++++----
drivers/gpu/drm/amd/amdgpu/sdma_v3_0.c | 20 +++++----
drivers/gpu/drm/amd/amdgpu/sdma_v4_0.c | 20 +++++----
drivers/gpu/drm/amd/amdgpu/sdma_v4_4_2.c | 20 +++++----
drivers/gpu/drm/amd/amdgpu/sdma_v5_0.c | 24 +++++-----
drivers/gpu/drm/amd/amdgpu/sdma_v5_2.c | 27 ++++++------
drivers/gpu/drm/amd/amdgpu/sdma_v6_0.c | 27 ++++++------
drivers/gpu/drm/amd/amdgpu/sdma_v7_0.c | 27 ++++++------
14 files changed, 173 insertions(+), 152 deletions(-)
--
2.47.1
More information about the amd-gfx
mailing list