Re: [PATCH v3 0/3] drm/amdgpu: Explicit sync for GEM VA operations

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Feb 4, 2025 at 8:37 AM Christian König <christian.koenig@xxxxxxx> wrote:
>
> Hi Friedrich,
>
> adding Alex.
>
> Am 04.02.25 um 13:32 schrieb Friedrich Vock:
> > Hi,
> >
> > On 19.08.24 13:21, Christian König wrote:
> >> Am 19.08.24 um 09:21 schrieb Friedrich Vock:
> >>> 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).
> >>
> >> Looks pretty good, I have Shashank and his team working on the similar
> >> patches ever since Bas initially came up with it since we need it for
> >> user queues as well.
> >>
> >> Shashank can you take a look at the UAPI? Of hand looks pretty similar
> >> to what we have done as well, doesn't it?
> >>
> >> For the internal implementation in the VM I'm currently working on a bug
> >> fix for the KFD team, so this is subject to change anyway. Going to keep
> >> this requirement here in mind while doing that, whatever implementation
> >> we end up with we probably need to re-base it anyway.
> >
> > Bumping this again - it's been quite a while, what became of that KFD
> > bugfix and the userqueue stuff? It'd be nice to finally make progress
> > here, whether it's using the user queue interface you worked on or a
> > re-spin of this. Maybe it's possible to split this off from the rest of
> > the userqueue stuff and merge it beforehand if you're reasonably certain
> > about how the uapi should look? Let me know.
>
> That is merged into amd-staging-drm-next for quite a while now, but we
> only defined the interface and dropped all optimizations to initially
> get it upstream.
>
> @Alex IIRC we pushed the KFD part upstream already, but the userqueue
> part is still waiting for the final firmware release, right?

Correct.

Alex

>
> Regards,
> Christian.
>
> >
> > Thanks,
> > Friedrich
> >
> >>
> >> Regards,
> >> Christian.
> >>
> >>>
> >>> 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
> >>>
> >
>




[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux