dri-devel.lists.freedesktop.org archive mirror
 help / color / mirror / Atom feed
From: "Christian König" <christian.koenig@amd.com>
To: Bas Nieuwenhuizen <bas@basnieuwenhuizen.nl>,
	dri-devel@lists.freedesktop.org, amd-gfx@lists.freedesktop.org
Subject: Re: [PATCH 0/6] amdgpu: Allow explicitly synchronized submissions.
Date: Thu, 18 Aug 2022 15:20:05 +0200	[thread overview]
Message-ID: <c83f20bd-a753-ddcb-d4f3-fb5348189153@amd.com> (raw)
In-Reply-To: <20220813012801.1115950-1-bas@basnieuwenhuizen.nl>

Hi Bas,

I've just pushed the branch drm-exec to my fdo repository: 
https://gitlab.freedesktop.org/ckoenig/linux-drm.git

This branch contains all the gang submit patches as well as the latest 
drm-exec stuff. VCN3/4 video decoding has some issues on it, but that 
probably shouldn't bother your work.

Please rebase this work on top. It should at least make the TTM changes 
unnecessary.

Going to take a closer look into the VM sync changes now.

Regards,
Christian.

Am 13.08.22 um 03:27 schrieb Bas Nieuwenhuizen:
> This adds a context option to use DMA_RESV_USAGE_BOOKKEEP for userspace submissions,
> based on Christians TTM work.
>
> Disabling implicit sync is something we've wanted in radv for a while for resolving
> some corner cases. A more immediate thing that would be solved here is avoiding a
> bunch of implicit sync on GPU map/unmap operations as well, which helps with stutter
> around sparse maps/unmaps.
>
> 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).
> I've been able to pass a full vulkan-cts run on navi21 with this.
>
> Userspace code for this is available at
> https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18032 and a branch
> for the kernel code is available at
> https://github.com/BNieuwenhuizen/linux/tree/no-implicit-sync-5.19
>
> This is a follow-up on RFC series https://patchwork.freedesktop.org/series/104578/ .
>
> The main changes were:
>
> 1) Instead of replacing num_shared with usage, I'm just adding usage, since
>     num_shared was actually needed.
> 2) We now agree that DMA_RESV_USAGE_BOOKKEEP is reasonable for this purpose.
>
> Please let me know if I missed anything, especially with the change to VM updates,
> as we went back and forth a ton of times on that.
>
>
> Bas Nieuwenhuizen (6):
>    drm/ttm: Add usage to ttm_validate_buffer.
>    drm/amdgpu: Add separate mode for syncing DMA_RESV_USAGE_BOOKKEEP.
>    drm/amdgpu: Allow explicit sync for VM ops.
>    drm/amdgpu: Refactor amdgpu_vm_get_pd_bo.
>    drm/amdgpu: Add option to disable implicit sync for a context.
>    drm/amdgpu: Bump amdgpu driver version.
>
>   .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c  | 16 +++++++---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_cs.c        | 20 +++++++++---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_csa.c       |  3 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.c       | 32 +++++++++++++++++--
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ctx.h       |  1 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c       |  3 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_gem.c       | 12 ++++---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_mes.c       |  3 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_object.c    | 11 ++++---
>   drivers/gpu/drm/amd/amdgpu/amdgpu_object.h    |  3 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c      | 11 +++++--
>   drivers/gpu/drm/amd/amdgpu/amdgpu_sync.h      |  4 +--
>   drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c       |  1 +
>   drivers/gpu/drm/amd/amdgpu/amdgpu_uvd.c       |  2 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm.c        |  5 ++-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h        |  3 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm_cpu.c    |  3 +-
>   drivers/gpu/drm/amd/amdgpu/amdgpu_vm_sdma.c   |  3 +-
>   drivers/gpu/drm/amd/amdkfd/kfd_svm.c          |  1 +
>   drivers/gpu/drm/qxl/qxl_release.c             |  1 +
>   drivers/gpu/drm/radeon/radeon_cs.c            |  2 ++
>   drivers/gpu/drm/radeon/radeon_gem.c           |  1 +
>   drivers/gpu/drm/radeon/radeon_vm.c            |  2 ++
>   drivers/gpu/drm/ttm/ttm_execbuf_util.c        |  3 +-
>   drivers/gpu/drm/vmwgfx/vmwgfx_resource.c      |  7 +++-
>   drivers/gpu/drm/vmwgfx/vmwgfx_validation.c    |  1 +
>   include/drm/ttm/ttm_execbuf_util.h            |  2 ++
>   include/uapi/drm/amdgpu_drm.h                 |  3 ++
>   28 files changed, 122 insertions(+), 37 deletions(-)
>


  parent reply	other threads:[~2022-08-18 13:20 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-13  1:27 [PATCH 0/6] amdgpu: Allow explicitly synchronized submissions Bas Nieuwenhuizen
2022-08-13  1:27 ` [PATCH 1/6] drm/ttm: Add usage to ttm_validate_buffer Bas Nieuwenhuizen
2022-08-17 22:04   ` Felix Kuehling
2022-08-18  0:30     ` Bas Nieuwenhuizen
2022-08-18  9:33       ` Christian König
2022-08-13  1:27 ` [PATCH 2/6] drm/amdgpu: Add separate mode for syncing DMA_RESV_USAGE_BOOKKEEP Bas Nieuwenhuizen
2022-08-13  1:27 ` [PATCH 3/6] drm/amdgpu: Allow explicit sync for VM ops Bas Nieuwenhuizen
2022-08-13  1:27 ` [PATCH 4/6] drm/amdgpu: Refactor amdgpu_vm_get_pd_bo Bas Nieuwenhuizen
2022-08-13  1:28 ` [PATCH 5/6] drm/amdgpu: Add option to disable implicit sync for a context Bas Nieuwenhuizen
2022-08-13  1:28 ` [PATCH 6/6] drm/amdgpu: Bump amdgpu driver version Bas Nieuwenhuizen
2022-08-18 13:20 ` Christian König [this message]
2022-08-21 23:08   ` [PATCH 0/6] amdgpu: Allow explicitly synchronized submissions Bas Nieuwenhuizen
2022-08-23 10:15     ` Christian König
2022-08-23 22:35       ` Bas Nieuwenhuizen

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=c83f20bd-a753-ddcb-d4f3-fb5348189153@amd.com \
    --to=christian.koenig@amd.com \
    --cc=amd-gfx@lists.freedesktop.org \
    --cc=bas@basnieuwenhuizen.nl \
    --cc=dri-devel@lists.freedesktop.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).