Re: [PATCH v4 00/24] Support Host Trap Sampling for gfx941/gfx942

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

 



Ping .....

Best Regards!

James Zhu

On 2024-02-06 10:58, James Zhu wrote:
PC sampling is a form of software profiling, where the threads of an application
are periodically interrupted and the program counter that the threads are currently
attempting to execute is saved out for profiling.

David Yat Sin (5):
   drm/amdkfd/kfd_ioctl: add pc sampling support
   drm/amdkfd: add pc sampling support
   drm/amdkfd: enable pc sampling query
   drm/amdkfd: enable pc sampling create
   drm/amdkfd: Set debug trap bit when enabling PC Sampling

James Zhu (19):
   drm/amdkfd: add pc sampling mutex
   drm/amdkfd: add trace_id return
   drm/amdkfd: check pcs_entry valid
   drm/amdkfd: enable pc sampling destroy
   drm/amdkfd: add interface to trigger pc sampling trap
   drm/amdkfd: trigger pc sampling trap for gfx v9
   drm/amdkfd/gfx9: enable host trap
   drm/amdgpu: use trapID 4 for host trap
   drm/amdgpu: add sq host trap status check
   drm/amdkfd: trigger pc sampling trap for arcturus
   drm/amdkfd: trigger pc sampling trap for aldebaran
   drm/amdkfd: use bit operation set debug trap
   drm/amdkfd: add setting trap pc sampling flag
   drm/amdkfd: enable pc sampling stop
   drm/amdkfd: add queue remapping
   drm/amdkfd: enable pc sampling start
   drm/amdkfd: add pc sampling thread to trigger trap
   drm/amdkfd: add pc sampling release when process release
   drm/amdkfd: bump kfd ioctl minor version for pc sampling availability

  .../drm/amd/amdgpu/amdgpu_amdkfd_aldebaran.c  |   11 +
  .../drm/amd/amdgpu/amdgpu_amdkfd_arcturus.c   |   14 +-
  .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.c |   73 +
  .../gpu/drm/amd/amdgpu/amdgpu_amdkfd_gfx_v9.h |    7 +
  drivers/gpu/drm/amd/amdkfd/Makefile           |    3 +-
  .../gpu/drm/amd/amdkfd/cwsr_trap_handler.h    | 2106 +++++++++--------
  .../drm/amd/amdkfd/cwsr_trap_handler_gfx9.asm |   29 +-
  drivers/gpu/drm/amd/amdkfd/kfd_chardev.c      |   75 +-
  drivers/gpu/drm/amd/amdkfd/kfd_debug.c        |   26 +
  drivers/gpu/drm/amd/amdkfd/kfd_debug.h        |    3 +
  drivers/gpu/drm/amd/amdkfd/kfd_device.c       |   14 +
  .../drm/amd/amdkfd/kfd_device_queue_manager.c |   11 +
  .../drm/amd/amdkfd/kfd_device_queue_manager.h |    5 +
  drivers/gpu/drm/amd/amdkfd/kfd_pc_sampling.c  |  426 ++++
  drivers/gpu/drm/amd/amdkfd/kfd_pc_sampling.h  |   35 +
  drivers/gpu/drm/amd/amdkfd/kfd_priv.h         |   46 +
  drivers/gpu/drm/amd/amdkfd/kfd_process.c      |   32 +-
  .../amd/include/asic_reg/gc/gc_9_0_offset.h   |    2 +
  .../amd/include/asic_reg/gc/gc_9_0_sh_mask.h  |    5 +
  .../gpu/drm/amd/include/kgd_kfd_interface.h   |    7 +
  include/uapi/linux/kfd_ioctl.h                |   64 +-
  21 files changed, 1914 insertions(+), 1080 deletions(-)
  create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_pc_sampling.c
  create mode 100644 drivers/gpu/drm/amd/amdkfd/kfd_pc_sampling.h




[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux