Commit Graph

13501 Commitit

Tekijä SHA1 Viesti Päivämäärä
Chris Freehill 557e1f5704 Add xgmi error_status and error_reset functions
Also, comment corrections and added check for invalid arguments

Change-Id: I891cbf9b37bfda629914a008811b840323872c02
2019-07-09 09:55:05 -04:00
Oak Zeng 3b014adccc Device HDP flush test
Change-Id: I1c19e44caeee4a6e59200dceb718896fcff9bf82
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>
2019-07-07 21:59:37 -04:00
Chris Freehill d699039284 Make build_rocrtst.sh build all target kernels by default
This will allow the default target list to be branch
specific.

Change-Id: If8ecc14e2b7fb5ed2eb25ab447480308d539b248
2019-07-05 19:30:07 -04:00
shaoyunl 664c6617ad Added SP3 assembler support for gfx10
Change-Id: I31c1df0f6d5243089e2ec3db381a19362be18d6c
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>
Signed-off-by: shaoyunl <shaoyun.liu@amd.com>
2019-07-05 10:40:54 -04:00
Chris Freehill 9b93cbe21d Add initial support for getting process information
Added implementation of and tests for
rsmi_dev_compute_process_info_by_pid_get() and
rsmi_dev_compute_process_info_get()

Change-Id: I4c4f5f39fe6701da37916c9ad41449b5d35ac7af
2019-07-03 20:01:43 -05:00
Yong Zhao c27704ded9 kfdtest: Add core test category
This will faciliate ASIC bringup, including under simulation environment.

Change-Id: Ie027a77a2498cba739fea51f404d9843ce8dbeae
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com>
2019-07-02 22:28:23 -04:00
Evgeny 11adeb1afb hip kernel names demangling
[ROCm/roctracer commit: b641d7c3fd]
2019-07-02 16:03:56 -05:00
Evgeny b641d7c3fd hip kernel names demangling 2019-07-02 16:03:56 -05:00
Jay Cornwall ff8f439112 Handle traps, illegal instruction, memory violations through queue signal
Report traps and fatal exceptions through a wavefront's
amd_queue_t.queue_inactive_signal. Previously, only traps were
reported and requireed the compiler to pass in the signal pointer
in s[0:1].

The signal is obtained through a mapping from doorbell index to
amd_queue_t*. The doorbell is fetched within a wavefront through
the gfx9+ S_SENDMSG(MSG_GET_DOORBELL) instruction.

Change-Id: I319b45f2e15dfcfe4db8f4065da1136e9539a42b
2019-07-01 22:59:41 -04:00
Jay Cornwall 6ed686ee29 Replace gfx9 SP3 trap handler with LLVM, fix IB_STS restore
Assembler toolchains are moving from SP3 to LLVM. Replace trap handler
source code with LLVM equivalent.

Fix a trap issue with SQ_WAVE_IB_STS restore. Mostly harmless as all
traps are currently considered fatal to the wavefront.

Change-Id: Iacecd9dd31a1d96a083c8b8327f442f33c861f9f
2019-07-01 22:59:27 -04:00
Chris Freehill 8caa6c0b01 Temporarily disable Debug test
Change-Id: Iabb238fcd78b9c2eb0c085b19ab93b8c9e538140
2019-06-29 04:55:35 -04:00
Evgeny 4306506823 enabling HIP activity as it is binded with corr id generation
[ROCm/roctracer commit: bc68ccc1f3]
2019-06-28 13:07:48 -05:00
Evgeny bc68ccc1f3 enabling HIP activity as it is binded with corr id generation 2019-06-28 13:07:48 -05:00
Evgeny 7a00dcb37e multiple changes update
[ROCm/roctracer commit: c1cca98a71]
2019-06-28 12:47:06 -05:00
Evgeny c1cca98a71 multiple changes update 2019-06-28 12:47:06 -05:00
Yong Zhao b507911ccd kfdtest: Use SDMA engine information directly from the node
Change-Id: Icd391c8e821fb0ff5a1094f21b880a97e6d417a3
Signed-off-by: Yong Zhao <Yong.Zhao@amd.com>
2019-06-28 00:47:15 -04:00
Kent Russell be6ff2cdff Remove failing tests due to gfx1010 kernel merge
BasicAddressWatch causes issues where KFDEvictTest and
KFDQMTest.OverSubscribeCpQueues fails, and results in a GPU hang/reset.
PM4EventInterrupt just hangs indefinitely. Remove them for now to allow
the kernel merges to resume, and figure out what happened in the nv10
merge to cause it

Change-Id: I418f9561ecb3e71bc52ac48ea363fcbde82a8e2b
2019-06-27 10:19:46 -04:00
Sean Keely 299874f17d Initial support for deallocation callbacks.
Adds hsa_amd_register_deallocation_callback and hsa_amd_deregister_deallocation_callback
to notify when HSA memory has been released.

Change-Id: I1f33cee250ca890e5c2e7fddfa4479aa5874651d
2019-06-26 04:12:17 -05:00
Chris Freehill 1c5e090507 Add rsmi_dev_memory_busy_percent_get()
Change-Id: Ide683b6c72870af547331f4502c5bb8c445d61b5
2019-06-25 19:09:13 -05:00
Chris Freehill ea26baec20 Event counter support
XGMI related events are supported

Change-Id: If17036fe890c8be45da3654353599821b5828c14
2019-06-24 17:40:01 -05:00
Kent Russell 04479f0b44 Merge "Add support for reading GPU's unique ID" into amd-master 2019-06-24 13:01:50 -04:00
Chris Freehill 43f664436d Undo previous commit of github CMakeLists.txt file
Change-Id: Ic650b913377112bff6c25176d9446311f33f6c78
2019-06-22 16:29:42 -05:00
Chris Freehill 908f07cb3b Revert "Event counter support"
This reverts commit 075833e9a5.
2019-06-21 22:07:40 -05:00
Chris Freehill 075833e9a5 Event counter support
XGMI related events are supported

Change-Id: Ic99d5a1847e8d28b22ad0b61cb9ea206eb878708
2019-06-21 18:27:50 -05:00
Evgeny 068e2b1c27 hip trace fix
Change-Id: I2477932a4e537082179859640904450ba8be82f4
2019-06-21 18:16:26 -05:00
Evgeny e6336aa4a8 hip trace fix
Change-Id: I2477932a4e537082179859640904450ba8be82f4


[ROCm/rocprofiler commit: 068e2b1c27]
2019-06-21 18:16:26 -05:00
Chris Freehill 081a2cc875 rocrtst fixes for hsa_signal cleanup and aql packet dispatch
In several places aql packets were written to queue all at once
instead of doing the header atomically. These cases have been
fixed.

There were a few hsa_signal leaked that have been addressed.

There was some duplication of code that has been addressed.

Addresses ROCMOPS-456

Change-Id: Ia1869bc370f92e49ac560301df47741d5f76978e
2019-06-21 17:34:10 -05:00
Felix Kuehling 62ee7b4112 Restore SDMA blacklist
The SDMA blacklist should contain all tests that use SDMA. It will
be applied to all ASICs that are know to have SDMA stability issues.

Change-Id: I53e723382c12f99bddf9c535000e27737a7ea1f6
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>
2019-06-21 16:08:22 -04:00
Oak Zeng be9ac578ef Re-enable HostHdpFlush test
The bus error bug was fixed from kfd driver and Thunk

Change-Id: Id02617fdc26f1c49307f90a0a939e05f22d739e7
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>
2019-06-21 11:52:07 -04:00
Oak Zeng 5d163cd821 Fix HostHdpFlush shader
1. Use s_mov_b32 to move 0xcafe to s18. s_movk_i32 is a sign extention move
instruction. Oxcafe will be extended to 0xffffcafe which is not desired
2. Add wait to s_load_dword instruction to make sure memory read finish before
the next store instruction.

Change-Id: I665d1d471019edfaba5693e07cdc567d4103573f
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>
2019-06-21 11:51:51 -04:00
Kent Russell 35d2807196 Add support for reading GPU's unique ID
Add support and testing for reading the Unique ID associated with a
specific GPU. This ID will persist across reboots, even if the GPU is
moved to a different machine. Note that this is per-GPU, not per-card,
as some cards have multiple GPUs, and each GPU will get a unique
identifier

Change-Id: Idce50c6febc2ceb1a4c1200d2489ec8b9d8fe174
2019-06-21 08:39:36 -04:00
Evgeny 775e64f392 hip trace fix
[ROCm/roctracer commit: 3488ee7ac1]
2019-06-21 03:16:18 -05:00
Evgeny 3488ee7ac1 hip trace fix 2019-06-21 03:16:18 -05:00
Evgeny 6c0aaa2773 aqlprofile api fix
Change-Id: I2a710040422c7853ece5472ea776442b25d69dcb
2019-06-19 23:14:27 -04:00
Evgeny 4d677562e6 minor change for read packets support
Change-Id: I6ca1087b29d00c60f7deedb4dbd25992e8a3e726
2019-06-19 15:09:27 -05:00
Evgeny 82ee832bef minor change for read packets support
Change-Id: I6ca1087b29d00c60f7deedb4dbd25992e8a3e726


[ROCm/rocprofiler commit: 4d677562e6]
2019-06-19 15:09:27 -05:00
Ramesh Errabolu 84039ef53f Improve error message reporting (#13) 2019-06-19 13:44:12 -05:00
Chris Freehill 7b98323823 Add some missing HSA info. fields 2019-06-19 13:44:12 -05:00
Chris Freehill ad54c50aba Add hex representation of some values to output 2019-06-19 13:44:12 -05:00
Siu Chi Chan 6ccaea7580 change naming from Dim[n] to (x,y,z)
print out the max grid/group size before the "per Dimension" info
2019-06-19 13:44:12 -05:00
Siu Chi Chan 590f612fd5 fix incorrect tyep casting for workgroup_max_dim and grid_max_dim 2019-06-19 13:44:12 -05:00
Anthony Cowley ca841958af cmake: fix typo in ROCR_LIB_DIR detection 2019-06-19 13:44:12 -05:00
justxi cfbbb52395 Add files via upload 2019-06-19 13:44:12 -05:00
James Edwards 26378662db Update CMakeLists.txt 2019-06-19 13:44:12 -05:00
James Edwards 8c81b1146f Update README.md 2019-06-19 13:44:12 -05:00
James Edwards 99adf5d85f Update README.md 2019-06-19 13:44:12 -05:00
James Adrian Edwards a8dc4b3e37 Add dependencies and support for rocm-cmake style packaging. 2019-06-19 13:44:12 -05:00
Sean Keely bb980462e7 Fix IPC related hangs/faults in rocrtst.
IPC was failing due to calling fork when HSA was open.  The fix
was correcting incomplete cleanup in several other tests.

TestBase::Close (via CommonCleanUp) now checks that HSA is properly
closed between tests.

rocrtstPerf.Memory_Async_Copy uses hwloc which uses OpenCL which
has no shutdown routine.  Consequently this test can not cleanup
properly.  I added a hack to force HSA refcount to the value
it should have if OpenCL were cleaning up but this leaks resources
and potentially puts hwloc & OpenCL in a bad state.

OpenCL loads LLVM which installs some exit handlers.  Those handlers
can't execute in a child process and can't be removed since OpenCL
doesn't cleanup.  IPC hacks around this by aborting rather than exiting
in the child process.

Change-Id: I92326a73d7b11632208717d99728e6dafdc7d3ca
2019-06-19 01:03:52 -04:00
Philip Yang 4066dcd542 kfdtest: increase BigBufStressTest timeout and avoid VM fault
If TTM eviction and restore happens, it may takes very long time if
retry, the longest time is 5 minutes during my test. There is chance
packet is submited to queue while eviction, we have to increase the
Wait4PacketConsumption timeout.

The queue will continue to execute after eviction and restore. If we
upmap the memory from GPU while queue is evicted, this will cause VM
fault. Change to unmap memory after queue is destroyed.



Change-Id: I1b44e2274ea7b83398b2e3293578dad6947cb5af
Signed-off-by: Philip Yang <Philip.Yang@amd.com>
2019-06-18 09:28:43 -04:00
Philip Yang 36776e9917 kfdtest: avoid BigBufStressTest run on NUMA node 0
Because dma32 zone is on node 0, use all system memory on node 0 will
cause TTM eviction to free dma32 zone for other devices which only
work with 32bit physical address. The TTM eviction and restore may take
too long and cause queue timeout.

Running on other NUMA nodes, the NUMA default memory policy is
MPOL_PREFERRED, means TTM will get pages from local node first, and then
get remaining pages from other nodes. Check /proc/buddyinfo can confirm
this.

Reset NUMA bind to all after the test.



Change-Id: I39b373c07a2d5aa396f5c7602bffabab0481930f
Signed-off-by: Philip Yang <Philip.Yang@amd.com>
2019-06-18 09:28:20 -04:00