Gráfico de commits

2930 Commits

Autor SHA1 Mensaje Fecha
Evgeny b07cbdc10e aqlprofile API: enabling privilege memory related counters
Change-Id: I28a24ad1a3ce78c5d8a6319635ae1ffd392ab690


[ROCm/ROCR-Runtime commit: fd99e909ff]
2017-10-09 17:34:54 -05:00
Yong Zhao 1d23f94a9b Update kfd_ioctl.h
Kernel file has been changed recently, so we update the file in thunk.

Change-Id: I359a389fa9d91641114c7fb75f420ee6b16f467a
Signed-off-by: Yong Zhao <yong.zhao@amd.com>


[ROCm/ROCR-Runtime commit: 8126ddc77e]
2017-10-06 14:49:11 -04:00
Yong Zhao 6cb1940d8a Revise gfx902 GFX version to 9.0.3
Change-Id: I6c16726ac9d096dc4ab127fb266eed105a4f9c87
Signed-off-by: Yong Zhao <yong.zhao@amd.com>


[ROCm/ROCR-Runtime commit: df4d8a0010]
2017-10-06 14:48:38 -04:00
Chris Freehill 05e78f7910 Make rocrtst use new rocm_smi library
Change-Id: Id688d6d6d5ff106a23f5b55eaca4e723c39433a3


[ROCm/ROCR-Runtime commit: 75eb3316aa]
2017-10-06 09:41:10 -05:00
Ramesh Errabolu d4972f3c67 Benchmark copy of data from one pool to another pool either in
one or both directions. Users can enumerate the pools reported
  by system to specify which pools serve as source / destination

Change-Id: I8e6d0adb3743b3328dd3ce9152762ca840ea613b


[ROCm/ROCR-Runtime commit: c2caa5ae2c]
2017-10-04 20:53:25 -04:00
Ramesh Errabolu a45d32e59b Adding kernels to read / write buffers
Change-Id: Icad95c084e0fcd0bd9f86154e23ac8f54c24afbe


[ROCm/ROCR-Runtime commit: 34602f7e95]
2017-10-04 20:33:48 -04:00
oak zeng d63644b7a0 Print debug message for GPU vm fault analysis
Change-Id: Ia6dac9d3f5c35a7d0e41de9b54c06596d00c7946
Signed-off-by: Oak Zeng <Oak.Zeng@amd.com>
Reviewed-by: Felix Kuehling <Felix.Kuehling@amd.com>


[ROCm/ROCR-Runtime commit: d9e71260c4]
2017-10-04 15:17:55 -04:00
Sean Keely 06c7997137 Release cached memory blocks when memory allocation fails and retry.
Change-Id: I6d96e136e147d8ffe9ff7baec26b4b5a678b739f


[ROCm/ROCR-Runtime commit: 9ba83d83f7]
2017-10-03 20:12:05 -04:00
Ramesh Errabolu 6497cf10b7 Cmake project to build Rocm Code Objects
Change-Id: If3a631615316c203318bb5ae1df328a66e2919b1


[ROCm/ROCR-Runtime commit: 2cab8307b9]
2017-10-03 17:53:56 -04:00
Chris Freehill a4bc830f61 Temporarily diable Max Memory alloc. test
Change-Id: I13cfc77bd5b823354e60a3023356255c72c1fd6c


[ROCm/ROCR-Runtime commit: 0adfe5a18e]
2017-10-03 00:19:08 -04:00
Chris Freehill 76b9f76690 Add IPC test to rocrtst
Change-Id: I6a40375790a184df11afc88b863cafc3d244e92a


[ROCm/ROCR-Runtime commit: c8b92c5087]
2017-10-01 11:01:31 -04:00
Chris Freehill 55a09b6818 Fix build error in release version
Change-Id: I5b8378e4e771369ff2b2cc64ddfb44dde38d8d44


[ROCm/ROCR-Runtime commit: 3fa0b7e5b4]
2017-09-28 23:47:51 -04:00
Sean Keely 21a65a1233 Support hsa_amd_agents_allow_access on page fragments.
Since access may only be manipulated on whole pages, suballocator fragments must cooperate to set the page's access.
Since the KFD does not migrate memory on access changes this implementation makes agent access sticky across the requests in a fragmented page.

Change-Id: I88479ed45fb40e9782b704526a7b8ffb22e7bd76


[ROCm/ROCR-Runtime commit: e9a6f2c3e6]
2017-09-27 19:04:04 -05:00
Evgeny 64b516415c removing graphics specific block RMI, ennabling memory related blocks
Change-Id: I477adc49b9ee3c8593c193bdc69c0deb4a9726e1


[ROCm/ROCR-Runtime commit: 0e88414f5c]
2017-09-25 10:49:22 -05:00
Sean Keely 36d1168183 Fix assert in simple_heap.
Also add comments to clarify pointer info constraints.

Change-Id: I8d07831a0e953d667c84c96fe53ed07c18ba115c


[ROCm/ROCR-Runtime commit: 476c8e36bf]
2017-09-21 00:47:18 -04:00
Evgeny 4c5404b89d adding hsa_ven_amd_aqlprofile.h to the packaging
Change-Id: I3b69396e3cea129106d47be53218213e29de9843


[ROCm/ROCR-Runtime commit: fcaecfee80]
2017-09-20 14:40:49 -04:00
Sean Keely 595c7130d2 Enable use of CLOCK_MONOTONIC_RAW for post 4.4 kernels.
Change-Id: I3c1f27c7e639df5128c36d81f715fa16e6c1cf13


[ROCm/ROCR-Runtime commit: 30fce248c6]
2017-09-20 14:28:23 -04:00
Chris Freehill 6c0e9b2c6f Use relative dir. instead of abs. (2nd instance)
Change-Id: I778a59e94efdd0845249473d92eaedd172429a48


[ROCm/ROCR-Runtime commit: 7d46a02df4]
2017-09-19 21:38:38 -04:00
Chris Freehill 27631645c4 Use rel. dir instead of abs. in CMake;Have a default number if iterations
Change-Id: I097fd229338ed520196cc4ed1ef1d00fe538e50c


[ROCm/ROCR-Runtime commit: 7d84190c4e]
2017-09-19 14:13:49 -04:00
Chris Freehill 5a31817b33 Use relative path for symlink instead of absolute
Change-Id: I165f38df43afd554f022bb3bac54546c7bc5e806


[ROCm/ROCR-Runtime commit: 2d58324ac8]
2017-09-19 09:25:43 -04:00
Sean Keely c5f1027982 Improve branch elimination in ScopedAcquire.
GCC can't reasonably be told that the lock ptr isn't null.  Adding a private bool
allows the branch to be eliminated, along with the bool.

Change-Id: I0605d69474d6a6e6951be93c0af1d8caf3f77124


[ROCm/ROCR-Runtime commit: 9dfdce5b3c]
2017-09-19 06:08:36 -04:00
Sean Keely 3aeea948cb Add env key to disable 2MB suballocation.
Change-Id: Icca3041c3578aa180a656c01aae62f2ad6e8b583


[ROCm/ROCR-Runtime commit: 4275661682]
2017-09-19 06:08:36 -04:00
Sean Keely 9fd778eec1 Add suballocator for ordinary VRAM allocations smaller than 2MB.
Track pointer info for sub 2MB fragment allocations in allocation_map_.

Add fragment support to IPC.

Change-Id: I00cfc2e2fa289aac90a4718c392f9bb056a61a87


[ROCm/ROCR-Runtime commit: 117be0b55a]
2017-09-19 06:08:36 -04:00
Chris Freehill 0ae72ff335 Remove reliance on env. variables to build rocrtst
Change-Id: I451dc9da4e810db51a4ec19e17a9b5206d09a224


[ROCm/ROCR-Runtime commit: ae4a9c4d91]
2017-09-16 23:58:20 -04:00
hthangir 3dc1b18d54 Use non-RAW version in clock_getres to workaround bug in older kernels
Change-Id: Ice0606a42cd7054f0804baf4af3521ffae3b7d50


[ROCm/ROCR-Runtime commit: 87d2df3da3]
2017-09-14 13:56:15 -05:00
Chris Freehill b22f297ea2 Remove use of tools library
Change-Id: I80eb95987e1e91c67bd6c3e4b12df934860940f1


[ROCm/ROCR-Runtime commit: b4f2e8d8f1]
2017-09-13 13:49:56 -05:00
Chris Freehill c937b65f2f Adjust CMakefile to use defines instead of env. vars.
Change-Id: If5e97269774416eb65ab2d6d3f9e299b950c63a4


[ROCm/ROCR-Runtime commit: 0cb7db7d7e]
2017-09-13 09:33:18 -04:00
Chris Freehill 14e7851781 Modified to build within Jenkins
Change-Id: I70c9c6b690f198c41641432478343d3714e26ab0


[ROCm/ROCR-Runtime commit: 80a7bdf66b]
2017-09-08 12:57:23 -05:00
Amber Lin 784e3dc3c6 Fix PmcGetCounterProperties
Blocks inside of HsaCounterProperties structure is not a fixed size. It
varies with number of counters in the block -- size of Counters in
HsaCounterBlockProperties is different in every block. Current
implementation assumes fixed size and the next block will overwrite the
previous block's Counters. This patch change the array implementation to
using a pointer so it'll move the next block to the correction position.

Change-Id: I72800f4db5f2a68215fba477a61ca07ec99054bf
Signed-off-by: Amber Lin <Amber.Lin@amd.com>


[ROCm/ROCR-Runtime commit: 117fa5034b]
2017-09-01 17:58:15 -04:00
Sean Keely e150edc48c Report tools library load failures in debug builds.
Change-Id: Ie1ff313e929fc46134e58730a1d370c5d7ace8db


[ROCm/ROCR-Runtime commit: f1a661dedb]
2017-08-31 21:32:48 -04:00
Laurent Morichetti b2cb6bca96 Include <errno.h> for EBUSY
Change-Id: I9fa3417445866f3ce37af2169f623afa8e92e873


[ROCm/ROCR-Runtime commit: 0f05ef73ac]
2017-08-31 07:32:51 -07:00
Chris Freehill af02d06972 Async mem. copy test with NUMA awareness
Change-Id: If655ac4c087be2d379e868aad83812f2437d78b9


[ROCm/ROCR-Runtime commit: 92e46584f8]
2017-08-30 21:35:37 -04:00
Amber Lin 2506a31248 Revert "Set guard page as disabled as default"
This reverts commit 4d839c4dc6.

Change-Id: I09b7e7915ec4759cab57d5863089a2c4a44dfacd
Signed-off-by: Amber Lin <Amber.Lin@amd.com>


[ROCm/ROCR-Runtime commit: a74f6896ea]
2017-08-30 10:48:23 -04:00
Amber Lin 13282b9115 Fix mmap when the count reaches the max
Applications may try to allocate lots host memory and reaches the mmap
limit (/proc/sys/vm/max_map_count). When Applications fails to allocate
memory and calls hsaKmtFreeMemory to release the memory, Thunk fails to
reduce the maps count so the following hsaKmtAllocMemory calls continue
to fail, which doesn't make sense to the application. This patch checks
the mmap to NORESERVE return value. If it fails and the error number is
ENOMEM, reduce the map count by munmap and map it again immediately.



Change-Id: I127cb479dfd86b199172eef269d59426f23859ea
Signed-off-by: Amber Lin <Amber.Lin@amd.com>


[ROCm/ROCR-Runtime commit: a81b29890c]
2017-08-29 11:47:29 -04:00
Felix Kuehling 7e59d7d5de Generalize size-dependent virtual address alignment
Support all fragment sizes up to 2MB by aligning buffers according
to their size.

Change-Id: I82b7ef8be6f1507d941e5c97edb6618adf8c66de
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>


[ROCm/ROCR-Runtime commit: 52598cf37e]
2017-08-28 15:01:33 -04:00
Ramesh Errabolu 39f0c3e821 Add Iommu Perf Cntrs
Change-Id: I1cf3f00a959a923462634a62263707a267ae18af


[ROCm/ROCR-Runtime commit: 3980b4268b]
2017-08-28 12:57:11 -05:00
Amber Lin 4d839c4dc6 Set guard page as disabled as default
Due to max_mmap_count issue, set default of guard page as disabled.


Change-Id: Ic9dfe69b621733e9fac86831b008a122994a67e7
Signed-off-by: Amber Lin <Amber.Lin@amd.com>


[ROCm/ROCR-Runtime commit: 65d680c035]
2017-08-24 16:27:52 -04:00
Felix Kuehling cec34b9c10 Fix two more device ID array bugs
Use the mapped_device_id_array size when allocating temp_node_id_array
for unmapping queues in fmm_map_to_gpu_nodes. registered_device_id_array
size may be 0. Also, this temporary array is small enough to allocate it
on the stack. Malloc and free are overkill here.

Fix potential memory leak when registering the same device ID array
multiple times.

Change-Id: I83f09fd0925d9de7cf11bf72ba0ebb77273f587d
Signed-off-by: Felix Kuehling <Felix.Kuehling@amd.com>


[ROCm/ROCR-Runtime commit: 395ecaa985]
2017-08-24 13:31:25 -04:00
Evgeny e18c7098a3 aqlprofile api: adding gfx8 mc counters
Change-Id: I84dc06c24b7961dfe665cf7e2ae6cc9ae3b7326b


[ROCm/ROCR-Runtime commit: 09c732c2f9]
2017-08-23 15:23:05 -05:00
Amber Lin 9ab8250fbc IOMMU path in sysfs is renamed
IOMMU path in sysfs was amd_iommu. After implementing multiple devices
support, the path is replaced with amd_iommu_<index>. Current Thunk spec
is not clear about how to support multiple instances in one block. There
is no products having multiple IOMMUs yet at this point. This patch
changes the path to support both amd_iommu and amd_iommu_0 for Carizo.

Change-Id: I3beea2fc78d96296232226191501a02ccf20d6b1
Signed-off-by: Amber Lin <Amber.Lin@amd.com>


[ROCm/ROCR-Runtime commit: 369902bf5b]
2017-08-23 14:00:49 -04:00
Amber Lin a885ad3724 Add debugging message on memory
Add pr_debug to all memory APIs and pr_err to some failure cases.

Change-Id: I8b519a1228cc19e6c04118fd87432e7f48f3cbf9
Signed-off-by: Amber Lin <Amber.Lin@amd.com>


[ROCm/ROCR-Runtime commit: 73707766ef]
2017-08-22 09:55:20 -04:00
Sean Keely 4ff7a53721 Correct vm_fault signal cleanup.
Change-Id: Id2f14b911e3991a76771425bc09f38a613280e6b


[ROCm/ROCR-Runtime commit: 0cb1e8cb35]
2017-08-18 22:12:38 -04:00
Harish Kasiviswanathan 7f7eebab6d Fix hsaKmtQueryPointerInfo for scratch memory
Change-Id: I35a0f1a81f8b0ac6e99c2e1572829eb32d3bc95b
Signed-off-by: Harish Kasiviswanathan <Harish.Kasiviswanathan@amd.com>


[ROCm/ROCR-Runtime commit: 00250f7686]
2017-08-18 17:01:31 -04:00
Chris Freehill 90b3fee7f5 Remove dependency on hsa-runtime-tools
Change-Id: Ic4ce2bcbf1176e7eb859db39f21e7185691837e1


[ROCm/ROCR-Runtime commit: c85322d93d]
2017-08-17 15:39:35 -04:00
Amber Lin 951796c73d Simplify memory maps
Simplify fmm_map_to_gpu_nodes code. Also fix a memory leak in this change.

Change-Id: I3487338b78c915de44588d0206bac4c53e728c60
Signed-off-by: Amber Lin <Amber.Lin@amd.com>


[ROCm/ROCR-Runtime commit: f1a5248cf2]
2017-08-15 17:34:30 -04:00
Evgeny 1fcbd14d89 AqlProfile API, commenting out hanging GFX9 blocks, ATC, GCEA, RPB
Change-Id: I411fb33f77c9538ca236b9b6b09c7dfe75220c02


[ROCm/ROCR-Runtime commit: fb4afca8c3]
2017-08-15 12:44:00 -05:00
Sean Keely 468313f9b5 Simplify pointer info version check.
Change-Id: I0ed363f1261ffc041547f313970ca67298ace56c


[ROCm/ROCR-Runtime commit: dec5c52e07]
2017-08-12 03:14:39 -04:00
Sean Keely 546c179cfc Initial IPC signal support.
Added an API for creating signals with attributes.
Added two APIs for IPC operations on signals.
Initial use of exceptions for error handling.

Add ref counting to signals.
Removed spin loops from signal destructors.
Signals are no longer to be destroyed with delete, use DeleteSignal instead.
Added delete safety to doorbells.
Added secondary hsa_signal_t -> Signal* translation path for IPC enabled signals.

Change-Id: Id59065d002f0c2566b0a9425694da2ed27cb7d7f


[ROCm/ROCR-Runtime commit: c9642cf7af]
2017-08-11 18:41:34 -05:00
Sean Keely 550547f404 Initial exception support for signals.
Also separate signal ABI block allocations from the runtime interface object.

Change-Id: If16763338db664f29163a1348f8f4c38cf0597b2


[ROCm/ROCR-Runtime commit: 2732b18092]
2017-08-11 18:41:34 -05:00
Sean Keely 76e67099b3 Update ipc test to use IPC signals.
Change-Id: Id5984093de45b08261d3196cc6fc3d597324edf4


[ROCm/ROCR-Runtime commit: d6acd0edfc]
2017-08-11 17:29:55 -04:00