All of lore.kernel.org
 help / color / mirror / Atom feed
From: Friedrich Vock <friedrich.vock@gmx.de>
To: amd-gfx@lists.freedesktop.org, dri-devel@lists.freedesktop.org
Cc: "Christian König" <christian.koenig@amd.com>,
	"Bas Nieuwenhuizen" <bas@basnieuwenhuizen.nl>,
	"Tatsuyuki Ishi" <ishitatsuyuki@gmail.com>
Subject: [PATCH v3 0/3] drm/amdgpu: Explicit sync for GEM VA operations
Date: Mon, 19 Aug 2024 09:21:07 +0200	[thread overview]
Message-ID: <20240819072110.108715-1-friedrich.vock@gmx.de> (raw)

In Vulkan, it is the application's responsibility to perform adequate
synchronization before a sparse unmap, replace or BO destroy operation.
This adds an option to AMDGPU_VA_OPs to disable redundant implicit sync
that happens on sparse unmap or replace operations.

This has seen a significant improvement in stutter in Forza Horizon 5
and Forza Horizon 4. (As games that had significant issues in sparse
binding related stutter).

Userspace changes for this new version can be found at [1][2], and a kernel
branch containing these patches can be found at [3].

[1] https://gitlab.freedesktop.org/pixelcluster/drm/-/commits/vm-explicit-sync
[2] https://gitlab.freedesktop.org/pixelcluster/mesa/-/commits/vm-explicit-sync
[3] https://gitlab.freedesktop.org/pixelcluster/linux/-/commits/amdgpu-vm-explicit-sync

v3 changes:
- Rebased onto current amd-staging-drm-next
- Added option to wait for drm_syncobjs instead of executing immediately

Tatsuyuki Ishi (3):
  drm/amdgpu: Don't implicit sync PRT maps.
  drm/amdgpu: Add optional explicit sync fences for GEM operations.
  drm/amdgpu: Bump amdgpu driver version.

 .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c  |  2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_csa.c       |  2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c       |  3 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c       | 76 ++++++++++++++++---
 drivers/gpu/drm/amd/amdgpu/amdgpu_object.h    | 23 +++++-
 drivers/gpu/drm/amd/amdgpu/amdgpu_trace.h     |  6 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_umsch_mm.c  |  2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c        | 68 +++++++++++------
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h        | 30 ++++----
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm_cpu.c    | 12 ++-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm_pt.c     |  2 +-
 drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.c   |  9 +++
 drivers/gpu/drm/amd/amdkfd/kfd_svm.c          | 18 ++---
 include/uapi/drm/amdgpu_drm.h                 |  7 ++
 14 files changed, 194 insertions(+), 66 deletions(-)

--
2.46.0


             reply	other threads:[~2024-08-19  7:26 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-08-19  7:21 Friedrich Vock [this message]
2024-08-19  7:21 ` [PATCH v3 1/3] drm/amdgpu: Don't implicit sync PRT maps Friedrich Vock
2024-08-19  7:21 ` [PATCH v3 2/3] drm/amdgpu: Add optional explicit sync fences for GEM operations Friedrich Vock
2024-08-19  7:21 ` [PATCH v3 3/3] drm/amdgpu: Bump amdgpu driver version Friedrich Vock
2024-08-19 11:21 ` [PATCH v3 0/3] drm/amdgpu: Explicit sync for GEM VA operations Christian König
2024-08-20 13:36   ` Sharma, Shashank
2025-02-04 12:32   ` Friedrich Vock
2025-02-04 13:36     ` Christian König
2025-02-04 13:58       ` Alex Deucher
2025-02-06 17:33         ` Friedrich Vock

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240819072110.108715-1-friedrich.vock@gmx.de \
    --to=friedrich.vock@gmx.de \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=bas@basnieuwenhuizen.nl \
    --cc=christian.koenig@amd.com \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=ishitatsuyuki@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.