Am 27.01.2018 um 02:09 schrieb Felix Kuehling:
I split this into an AMDGPU and AMDKFD part. The bigger patches that
add lots of new code are not cherry-picked and squashed. Instead I
copied, reorganized and cleaned up the code by hand and then split it
into some semblance of a sensible history. I acknowledged major
contributors with signed-off-by lines but didn't list everyone who
ever touched that code (would probably be most of the team).

I pushed an updated Thunk (rebased on ROCm 1.7) that works with this
KFD update. Most testing was done on Fiji with KFDTest (Yong started
working on open-sourcing it). I was also able to run the OpenCL
version of SHOC, though most sub-tests still fail.

KFDTest can manage VRAM and system memory, submit shader dispatches,
receive events. I haven't tested multi-GPU yet, but in theory that
should also work, with system memory buffers shared between multiple
GPUs.

The big missing piece at this point is support for userptr memory
(user-allocated memory mapped for GPU access). That's giong to be my
next patch series that should enable a much wider range of real-world
applications.

AMDGPU:
Patches 1-5 are minor cleanups and fixes

Patches #1-#5 are Reviewed-by: Christian König <christian.koe...@amd.com>.

Patches 6-10 add and implement KFD->KGD interfaces for GPUVM

AMDKFD:
Patches 11-13 are minor cleanups and fixes
Patches 14-25 add all the GPUVM memory management functionality

Felix Kuehling (22):
   drm/amdgpu: remove useless BUG_ONs
   drm/amdgpu: Fix header file dependencies
   drm/amdgpu: Fix wrong mask in get_atc_vmid_pasid_mapping_pasid
   drm/amdgpu: Remove unused kfd2kgd interface
   drm/amdgpu: Add KFD eviction fence
   drm/amdgpu: Update kgd2kfd_shared_resources for dGPU support
   drm/amdgpu: add amdgpu_sync_clone
   drm/amdgpu: Add GPUVM memory management functions for KFD
   drm/amdgpu: Add submit IB function for KFD
   drm/amdkfd: Add missing #ifdef CONFIG_AMD_IOMMU_V2 guard
   drm/amdkfd: Use per-device sched_policy
   drm/amdkfd: Add GPUVM virtual address space to PDD
   drm/amdkfd: Implement KFD process eviction/restore
   uapi: Fix type used in ioctl parameter structures
   drm/amdkfd: Remove limit on number of GPUs
   drm/amdkfd: Aperture setup for dGPUs
   drm/amdkfd: Add per-process IDR for buffer handles
   drm/amdkfd: Allocate CWSR trap handler memory for dGPUs
   drm/amdkfd: Add TC flush on VMID deallocation for Hawaii
   drm/amdkfd: Add ioctls for GPUVM memory management
   drm/amdkfd: Kmap event page for dGPUs
   drm/amdkfd: Add module option for testing large-BAR functionality

Harish Kasiviswanathan (1):
   drm/amdkfd: Remove unaligned memory access

Oak Zeng (1):
   drm/amdkfd: Populate DRM render device minor

Yong Zhao (1):
   drm/amdgpu: Replace kgd_mem with amdgpu_bo for kernel pinned gtt mem

  drivers/gpu/drm/amd/amdgpu/Makefile                |    2 +
  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.c         |  127 +-
  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd.h         |  115 +-
  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_fence.c   |  196 +++
  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v7.c  |   80 +-
  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v8.c  |   82 +-
  drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c   | 1500 ++++++++++++++++++++
  drivers/gpu/drm/amd/amdgpu/amdgpu_object.c         |    4 +
  drivers/gpu/drm/amd/amdgpu/amdgpu_object.h         |    2 +
  drivers/gpu/drm/amd/amdgpu/amdgpu_ring.h           |    6 +-
  drivers/gpu/drm/amd/amdgpu/amdgpu_sync.c           |   53 +-
  drivers/gpu/drm/amd/amdgpu/amdgpu_sync.h           |    1 +
  drivers/gpu/drm/amd/amdgpu/amdgpu_ttm.c            |   25 +
  drivers/gpu/drm/amd/amdgpu/amdgpu_vm.h             |    1 +
  drivers/gpu/drm/amd/amdkfd/kfd_chardev.c           |  484 +++++++
  drivers/gpu/drm/amd/amdkfd/kfd_crat.c              |    3 +
  drivers/gpu/drm/amd/amdkfd/kfd_device.c            |   65 +-
  .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.c  |  290 +++-
  .../gpu/drm/amd/amdkfd/kfd_device_queue_manager.h  |    9 +
  drivers/gpu/drm/amd/amdkfd/kfd_events.c            |   31 +-
  drivers/gpu/drm/amd/amdkfd/kfd_flat_memory.c       |   59 +-
  drivers/gpu/drm/amd/amdkfd/kfd_module.c            |    7 +
  drivers/gpu/drm/amd/amdkfd/kfd_packet_manager.c    |   37 +
  drivers/gpu/drm/amd/amdkfd/kfd_priv.h              |   79 +-
  drivers/gpu/drm/amd/amdkfd/kfd_process.c           |  490 ++++++-
  drivers/gpu/drm/amd/amdkfd/kfd_topology.c          |    4 +
  drivers/gpu/drm/amd/amdkfd/kfd_topology.h          |    1 +
  drivers/gpu/drm/amd/include/kgd_kfd_interface.h    |  101 +-
  include/uapi/linux/kfd_ioctl.h                     |   87 +-
  29 files changed, 3811 insertions(+), 130 deletions(-)
  create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_fence.c
  create mode 100644 drivers/gpu/drm/amd/amdgpu/amdgpu_amdkfd_gpuvm.c


_______________________________________________
amd-gfx mailing list
amd-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/amd-gfx

Reply via email to