Commit Graph

8920 Commits

Author SHA1 Message Date
Sean Keely 6df9ba97ce Sequence queue error callbacks with queue destroy.
HSA v1.2 update.

Change-Id: I13975e71b2c1ea5b7738236f5d02df84312ad00c
2018-04-04 08:12:58 -04:00
Konstantin Zhuravlyov c93584e725 ROCRTST: Add missing hidden arguments
Change-Id: Idd5d58749f4dd740c96299c40e87d83840b6fb2b
2018-04-02 18:19:24 -04:00
Ramesh Errabolu 987f3f97aa Enable sDMA packet HDP Flush on Gfx9 and later devices
Change-Id: I85922e5266883ef7e9eed3565e2c3b209009d294
2018-04-02 11:47:59 -04:00
Shaoyun Liu aa28484583 Thunk: Add gfx904 support on libthunk
Change-Id: I78bc623f6b86293e2bf9fbe00a646d152faafdc4
Signed-off-by: Shaoyun Liu <Shaoyun.Liu@amd.com>
2018-03-29 18:21:02 -04:00
Evgeny 5d0a73af17 replacing throw with abort in Context destructor 2018-03-29 15:28:59 -05:00
Evgeny 5524c7b7ba adding kernel name truncating till the base name for sqtt files labeling and results; verbose mode 2018-03-27 16:44:58 -05:00
Konstantin Zhuravlyov e4c6a3ae28 Convert old target names to old new target names.
Change-Id: I701651d74f353e234556e4bf5d50d63c598e5f15
2018-03-26 11:59:13 -04:00
JamesAdrian Edwards 974ad106e3 Merge "Add libhsakmt.so to link command for ctrl executable." into amd-master 2018-03-23 17:00:43 -04:00
James Edwards ff14f63090 Add libhsakmt.so to link command for ctrl executable.
Change-Id: I3ca4c8a0a2a080a9a790ab455152b2d308a0de3f
2018-03-23 10:19:01 -05:00
Evgeny ef761725b4 sqtt size setting, ctx limit, heartbeat
Change-Id: I98de62e950b9201d03a9ca82cee9e2bbc2666e63
2018-03-23 03:19:05 -05:00
Evgeny f0dc77195d wait list final waiting
Change-Id: I2270dfa803875e480703cd1b87f175c3d762ed2c
2018-03-21 22:15:47 -05:00
Evgeny aea5d8e0d9 context array valid bit reverted
Change-Id: Ibbbf19ffd2e66750d7296d2b45850c21bb86445a
2018-03-21 21:11:42 -05:00
Sean Keely cd46954cc4 Cleanup in blit kernel management code.
Remove unused function (FenceRelease), add comments to barrier packet settings,
correct profiling controls to work with queue wrappers.

Change-Id: I45bb26227bcc2b78edb8ad5dc497603c33234e18
2018-03-20 22:19:54 -04:00
Sean Keely f4521ce782 Revert "Reduce to only one internal compute queue."
This reverts commit 0eb534e3cf.

Change-Id: Ifcc5e148457243a6cf9ef277da7ab7c4e10f6fc9
2018-03-20 22:19:44 -04:00
Wilkin 8e3d26c617 ROCm Runtime Support for respecting target xnack setting
This includes the changes provided by Konstantin, "Add xnack from elf header" (Change 136389).

Change-Id: I95e51141caa0d7c21903b09212c02e4906ec54a3
2018-03-20 16:57:15 -04:00
Felix Kuehling 8ac2150e81 Let KFD use VM from DRM render node
Move opening of DRM render nodes from topology to FMM aperture
initialization. Keep the same FDs open for the life time of the
process to match how KFD uses the VMs in the FDs. Call acquire_vm
ioctl during aperture initialization to let KFD use the VMs from
the render nodes.

Change-Id: Ie07d57788cbe685b1841cccc00820c12894a0356
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
2018-03-20 15:42:45 -04:00
Philip Yang 1bf93d4e89 Export microcode version of sDMA
Change-Id: I86fa5da5e72af13a2e76e6e3be4667a7220923d5
Signed-off-by: Philip Yang <Philip.Yang@amd.com>
2018-03-19 08:38:50 -04:00
Evgeny 6c4078f9fc wait_list dump fix
Change-Id: Iebe92b7151080a6a10a5dade82526b2429d518a6
2018-03-18 17:15:35 -05:00
Evgeny cc3146ba81 tool: adding wait list
Change-Id: I6f161ddc9aef953b62e52004bd081327d34a9470
2018-03-18 04:04:34 -05:00
Evgeny caa15d7186 dispatch vs profiling packets signals race fixed
Change-Id: I7f250d01f3d45f3f8ec2539b2187ab99503850aa
2018-03-16 10:34:44 -05:00
Konstantin Zhuravlyov b7915e9248 Bring loader in sync with stg sc.
Change-Id: Ib4d9231ca61048557acdad8eb8f632688c4aadd8
2018-03-12 15:00:50 -04:00
Felix Kuehling 19dacdecd3 Update kfd_ioctl.h from kernel
This adds new acquire_vm ioctl.

Change-Id: Ia6794bfd291706cecdb2d06f4902b324b48577df
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
2018-03-09 16:36:52 -05:00
Felix Kuehling 85e1a9bf5e Rework SVM aperture initialization
Query GPUVM aperture limits of all dGPUs to determine SVM aperture
base and limit. This depends on a recent KFD change that reports
the GPUVM apurture limits for dGPUs in the
AMDKFD_IOC_GET_PROCESS_APERTURES_NEW ioctl (drm/amdkfd: Simplify
dGPU SVM aperture handling).

Only initialize SVM aperture once, instead of once per GPU.

Don't call AMDKFD_IOC_SET_PROCESS_DGPU_APERTURE. It's not needed any
more and will not be upstreamed.

Change-Id: Ib3389e8ba18505ba15fc33f45fe8a57e690a565d
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
2018-03-09 16:36:49 -05:00
Felix Kuehling c5cfb7e25b Move dGPU memory aperture initialization
Define dgpu_mem_init before it's used and keep the code close to the
rest of the aperture initialization code.

Change-Id: I14ad11a364524a15affee9186b1298ba7d56d2c9
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
2018-03-09 15:00:12 -05:00
Evgeny f423e5f486 cosmetic change
Change-Id: I871e8260643a4409f7a471ea1575e9bb0a505f7f
2018-03-07 18:45:33 -06:00
Evgeny a2ebcdf825 build/test adapting for ROCm packaging
Change-Id: I4bf855cd6f0eb8432194e20fce0ad4cd05692813
2018-03-07 15:08:20 -06:00
Sean Keely ac5ccb45b7 Use atomic variable for Runtime ref_count_.
Change-Id: Ic4d0ad9ff93d0cc52cfe2df006ee3436d5960b07
2018-03-06 03:45:14 -06:00
Evgeny 363700581a adding timestamps dispatch/begin/end/complete
Change-Id: I8c23e5f7ff75174243224ff008ba266553ee30c8
2018-03-05 20:59:01 -06:00
Evgeny e009b48127 adding destructor
Change-Id: Ie55a17b637dff5e34c0488e5733101932e0feb5e
2018-03-05 16:08:52 -06:00
James Edwards d34b716a08 Merge pull request #2 from RadeonOpenCompute/install-packaging
Add install and packaging to CMakeList.txt file.
2018-02-28 16:59:10 -06:00
James Edwards f99ef9da4f Add install and packaging to CMakeList.txt file. 2018-02-28 16:57:14 -06:00
Sean Keely 31c05d2fc7 Add exception safety to Runtime::Acquire.
Change-Id: Ia2a9baf08bb56971412f1ac3914592612de5f134
2018-02-28 05:21:07 -06:00
Evgeny 1c8f767da4 profiling controll options 2018-02-27 13:32:11 -06:00
Yong Zhao 15e525af45 Add pkg config support in the hsakmt-roct-dev package
Change-Id: Ida6b3083bfc9405ef9b6b8e426dc7dc51d61a811
Signed-off-by: Yong Zhao <yong.zhao@amd.com>
2018-02-27 11:21:38 -05:00
Yong Zhao 2c426a026a Turn off the verbose building message
Change-Id: If4ebdb6f87fde9c3cc76b16c57e862bfb972ed5e
Signed-off-by: Yong Zhao <yong.zhao@amd.com>
2018-02-26 18:17:13 -05:00
Philip Yang 105291849f Close shmem file handle, to fix file handle leak
kfdtest hsaKmtOpenKFD failed after 1019 loop if using --gtest_loop=-1,
because default max open file handle limit is 1024. Found shmem file handle
is not closed from lsof output.

Change-Id: I474de2bae6c03e879a219dedf5f18639118b73e5
Signed-off-by: Philip Yang <Philip.Yang@amd.com>
2018-02-23 10:50:52 -05:00
Jay Cornwall e2c353dc0d Allocate EOP queue local to GPU
On discrete GPUs place the EOP queue in VRAM. The reader/writer of this
queue is the CP and the size is small. Dispatch latency improves
through lower read latency in AQL completion phase.

Change-Id: Id8351dcddbd21fd7c7d699803c96434c9132db71
Signed-off-by: Jay Cornwall <Jay.Cornwall@amd.com>
2018-02-22 18:14:05 -05:00
Evgeny 33b3546fe4 adding queue destroy callback 2018-02-21 19:59:47 -06:00
Evgeny a9a5119399 contrctor/destructor changes, OnLoad/OnUnload functions, removed hsa_init()/hsa_shutdown() 2018-02-21 10:07:59 -06:00
Oak Zeng 25170c3c57 Support ptrace access invisible vram
Invisible device memory is mmapped as PROT_NONE.
Normal CPU access to the memory is still not allowed but
struct vm_area_struct will be created for the memory address
so ptrace can access the memory via the vma.

Change-Id: I07c69208716c920ccce33e6b494b610b61a0a7c1
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>
2018-02-20 14:13:00 -05:00
Evgeny 52b3ce5845 metrix update 2018-02-19 18:50:28 -06:00
Evgeny 0b0ce2d931 update 2018-02-19 18:18:51 -06:00
Chris Freehill 81c923b26f Reenable Memory_Max_Mem test
Change-Id: I2da50f886cd8d28d0f9ad8b8f77cfa13d392bf01
2018-02-13 17:37:25 -06:00
Evgeny fbc7de50f7 metrics and counter importing 2018-02-12 15:00:20 -06:00
Chris Freehill 146b3871df Completely disable rocm-smi (take 2)
Change-Id: I68f403c539163bfe00ee2b59dbd36d1c6d7669f1
2018-02-12 06:43:47 -06:00
Chris Freehill bd0c4efc34 Completely disable rocm-smi from rocrtst until rocm-smi-lib is updated
Change-Id: I5cce06a2bbde7a3a48e391022c793a462794c6d1
2018-02-11 21:42:25 -06:00
Sean Keely 95c926059d Improve fragment map reporting format.
Change-Id: I85d09d085b08de46271ec902c766a8609a4b921a
2018-02-09 14:03:03 -05:00
Sean Keely 9212e7a09f Emit fragment map and thunk ptr info with VM faults.
Change-Id: If1302f674df7a636529c64bf66dfdda755a70c32
2018-02-09 14:02:26 -05:00
Sean Keely 0eb534e3cf Reduce to only one internal compute queue.
Change-Id: Ie42ecb3b242077624d74caeabfcd418dbbd9ff3e
2018-02-09 14:02:15 -05:00
Sean Keely bd5dd47ca1 Defer creation of internal queues and blits until first needed.
Change-Id: I2e61d7e102f38389d806d9eb24beda910573157b
2018-02-09 14:02:07 -05:00