Commit Graph

73 Commits

Author SHA1 Message Date
Evgeny f53ee46725 VERSION_MINOR macro typo fix
aqlprofile info ENABLE_CMD enum adding;

Change-Id: I7b19082144d2bd0bf7af7ddc282358168b225759


[ROCm/ROCR-Runtime commit: 81532bb6f5]
2018-09-17 20:49:47 -04:00
Sean Keely 61b53915d7 Implement SDMA copy rect for gfx9.
Fix pitch overflow due to small element detection.
Add wide pitch 2D copy handling.
Cleanup code duplication.

Change-Id: I93b1584aba8e5964957eb7ab3544df806ca3e2f9


[ROCm/ROCR-Runtime commit: e0839ab27e]
2018-08-29 19:13:07 -04:00
Sean Keely fe44e57a6c Expose ROCr build ID.
Adds HSA_AMD_SYSTEM_INFO_BUILD_VERSION=0x200 to hsa_system_info_t.
This returns a const char* pointing at the build string (git describe).

Change-Id: I73e6612482bf6ffc4037fd365808eb9211a650ad


[ROCm/ROCR-Runtime commit: cd8e5c1da8]
2018-08-20 20:44:32 -05:00
Jay Cornwall 8bd488dfb9 Add hsa_amd_queue_set_priority extension function
Controls dispatch and wavefront scheduling arbitration across quees.

Change-Id: I498f4898b544f79b8fb8514bf7e789ca9da29462


[ROCm/ROCR-Runtime commit: e388a23344]
2018-06-19 19:41:28 -05:00
Evgeny e3f55212ed aqlprofile: get version API
Change-Id: I3a85c088bfff3f54d8829e17cdafd7dfcdfb0c1d


[ROCm/ROCR-Runtime commit: 0fcd2fa56e]
2018-04-27 23:11:16 -04:00
Evgeny cbc3c97252 aqlprofile: read API
Change-Id: I896b1fbf1c19608197ac0a99b9d467d8c1bee775


[ROCm/ROCR-Runtime commit: b37027e347]
2018-04-27 11:00:08 -05:00
Qingchuan Shi 286ca924f3 debug suport for queue error.
1/ Revised debug event handler to handle different events.
2/ Added queue error handler using the callback in queue create, which will print out wave info when queue in error state.
3/ Preempt queue instead of destory queue when queue error state.

Change-Id: Ib727d208de9caf1c72c76d42268483b24aaebde8


[ROCm/ROCR-Runtime commit: 49d2175c74]
2018-04-20 14:25:16 -04:00
Evgeny 94a6b2cd95 aqlprofile API: adding SQTT SE_MASK parameter
Change-Id: I0149692c2249c6d84ca710ce64e7346784ae593f


[ROCm/ROCR-Runtime commit: 5a6f47c475]
2018-04-16 16:39:42 -05:00
Sean Keely 2b15fedb50 Support large scratch allocations and reclaim.
Also improve small_heap used for scratch region allocation.

Change-Id: Ib7311b663b38968d88ebc355b81e12c0863dc541


[ROCm/ROCR-Runtime commit: 7caf9633f6]
2018-04-05 21:51:56 -04:00
Sean Keely 379b5579a9 Respect new memory model requirements at queue destroy.
Spec requires GPU release fences and CPU acquire fences at queue destroy.
Also update the recognized status codes.

Change-Id: If9166f5149f65417c7057ff7c0f69f6ac094d6ab


[ROCm/ROCR-Runtime commit: b6f0248f53]
2018-04-04 08:13:00 -04:00
Wilkin c7af4e8857 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


[ROCm/ROCR-Runtime commit: 8e3d26c617]
2018-03-20 16:57:15 -04:00
Konstantin Zhuravlyov 544b3a88ec Bring loader in sync with stg sc.
Change-Id: Ib4d9231ca61048557acdad8eb8f632688c4aadd8


[ROCm/ROCR-Runtime commit: b7915e9248]
2018-03-12 15:00:50 -04:00
Sean Keely 00b5aec5d4 Guard against IPC signal use of when profiling copy APIs.
Also update IPC signal API text to allow single process profiling with IPC signals.

Change-Id: I90b246623129d57183acb4ba1789beec360547c3


[ROCm/ROCR-Runtime commit: f59b001c75]
2018-01-31 19:05:32 -05:00
Tony Tye ab3c53761b Add support for R_AMDGPU_RELATIVE64
- Add support for R_AMDGPU_RELATIVE64 relocation record.
- Return status error if any unsupported relocation record encountered.

Change-Id: Icbb5dcb81109a70c1f2195412a0df58a11be9da1


[ROCm/ROCR-Runtime commit: d472b24d05]
2018-01-30 18:20:26 -05:00
Sean Keely a427fde26a Cleanup Signal interfaces for doorbells.
Create an interface for doorbell signals to reduce code duplication.
No functional changes.

Change-Id: I101a8997dd582ff99e1537758c804b21fe3bb6af


[ROCm/ROCR-Runtime commit: d2e70bb999]
2017-11-28 22:12:19 -06:00
Evgeny acce35d21f _aqlprofile_start() API migration
Change-Id: I7c8c7a6fc6f9b20cc2e4074dde38fb19440927f1


[ROCm/ROCR-Runtime commit: 86939368d1]
2017-11-20 17:32:19 -05:00
Evgeny acaf0d0aac aqlprofil API: removing from HSA hsa_api_trace/hsa_ext_interface
Change-Id: I12fac55ea9ccfdb119899bf9d000e3c8b0bf4bbb


[ROCm/ROCR-Runtime commit: 6e1b9288f6]
2017-11-11 10:01:12 -06:00
Evgeny fd81986bb2 aqlprofile API: _aqlprofile_start() returns required profile buffer sizes if undersized
Change-Id: Ib14b2cb2e7e2026c3af0b7bd2f08f51e48e598b2


[ROCm/ROCR-Runtime commit: bb8eaf3ac8]
2017-11-09 20:03:55 -06:00
Sean Keely 2406218416 Add queue intercept support to the runtime.
Queue intercept is exposed as two tools-only APIs via the API
intercept table.

Change-Id: Iac9602ed3143974d85c3569e9092295ad18037f8


[ROCm/ROCR-Runtime commit: 0c7dde2d1f]
2017-11-08 15:50:01 -05:00
Kent Russell c52d3b6997 Revert "aqlprofile API: _start() sets buffers sizes with NULL ptr; block counters reg number / block name info"
This reverts commit 8518a48d4f.

Change-Id: Ie90b091df772bf9391494c773d63858aafbc1176


[ROCm/ROCR-Runtime commit: b29d3f63e2]
2017-11-08 06:59:33 -04:00
Evgeny 8518a48d4f aqlprofile API: _start() sets buffers sizes with NULL ptr; block counters reg number / block name info
Change-Id: I3cb93453b683c55bf5ec26271648232306a5d140


[ROCm/ROCR-Runtime commit: 3daa85fad8]
2017-11-07 15:05:47 -05:00
Qingchuan Shi 3e9a0561c0 Add APIs to support debugging vm fault
1. Add hsa ext api hsa_amd_register_vmfault_handler for debugger to register callback in case of VM fault.
2. Extend hsa_ven_amd_loader API to:
   (1) iterate loaded code objects in executable:
       hsa_ven_amd_loader_executable_iterate_loaded_code_objects
   (2) get loaded code object info:
       hsa_ven_amd_loader_loaded_code_object_get_info
3. Make the id of hsa_queue the same as the one used in communication with thunk (for amd_aql_queue)

Change-Id: I68910809e59e24297350d262606f00e96c14bcbd


[ROCm/ROCR-Runtime commit: ce6aee01ed]
2017-10-28 21:48:26 -04:00
Ramesh Errabolu a4d753615b Changes to support surfacing of link weight as part of link info
Change-Id: I1c0705a9374af1245f0419c51beded0d7ee10639


[ROCm/ROCR-Runtime commit: dccbc9f2af]
2017-10-20 12:09:31 -04:00
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
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 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
Evgeny e18c7098a3 aqlprofile api: adding gfx8 mc counters
Change-Id: I84dc06c24b7961dfe665cf7e2ae6cc9ae3b7326b


[ROCm/ROCR-Runtime commit: 09c732c2f9]
2017-08-23 15:23:05 -05: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 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
Evgeny ce72ce0c92 adding aqlprofile member to HsaApiTable
Change-Id: Id674186dfa2e83295a51f770ccc0400f1cb51a98


[ROCm/ROCR-Runtime commit: 287afd3a52]
2017-08-09 16:09:39 -05:00
Evgeny 200067f1be Adding HSA_API macro to the API method declarations to be consistent with other HSA header files, TCS removing
Change-Id: Ic217d3b2bdbb22d3600c5ecaacb7ab53bf26096a


[ROCm/ROCR-Runtime commit: 4824a2db0b]
2017-08-08 10:46:12 -04:00
Evgeny c0c32288ac aqlprofile block list, explicit numbers assigned, IA removed
Change-Id: I9f9358f8e03e13eb81845de2e33dd5f3da27811a


[ROCm/ROCR-Runtime commit: 47322942b3]
2017-08-03 11:39:21 -04:00
Evgeny d224dc274f aql-profile api: reducing blocks list to compute only and new gfx9 blocks
Change-Id: Ib506b82ea407afec4f5d4bcad755d4d57b92e34b


[ROCm/ROCR-Runtime commit: c66f68041c]
2017-08-02 12:21:24 -04:00
Evgeny b6d71a8fe6 hsa_ven_amd_aqlprofile.h: include <hsa.h> fix
Change-Id: Idfd2fdde112d502d4b4a3365512ec601f7e56a5b


[ROCm/ROCR-Runtime commit: ab67b8511b]
2017-07-12 15:43:58 -05:00
Sean Keely dd8804d7ad Remove use of anonymous member in C builds.
Tools/CodeXL will retain older versions of structs if them need them.

Change-Id: I568d7b445778dd575ef71000b4b839300572288e


[ROCm/ROCR-Runtime commit: a0a3587345]
2017-07-12 16:40:00 -04:00
Evgeny ce82829fc1 hsa-runtime integration
Change-Id: I48968966ffe164218ebff88d0e3a1268e96bf1dd


[ROCm/ROCR-Runtime commit: 4174f07fd1]
2017-07-05 10:55:30 -04:00
Sean Keely 42bb22d0cc Add preferred agent info to pointer info struct.
Lookup blit agent via pointer info in memory_fill.

Change-Id: I02feaf68bb9726858e8cb0ede6bc5f2b3707f5af


[ROCm/ROCR-Runtime commit: c3e2a88ade]
2017-05-31 05:16:05 -04:00
hthangir d4a8e87a35 Fix the comment to specify the right type of allocation required.
Change-Id: I8bda8d64010d466d6ca5e779d2042cca3f494ecf


[ROCm/ROCR-Runtime commit: 6c750f479d]
2017-03-20 11:56:54 -04:00
Sean Keely de0fa51022 Fix Api table copy operation and tools version checking.
Change-Id: Ia76d16f3ea6d0abb931813f90bc3bc2119da5999


[ROCm/ROCR-Runtime commit: 505d722b7d]
2017-02-07 14:26:20 -05:00
Sean Keely d984194fa5 Use fixed size type for queue type arguments.
Change-Id: I81b605c9cc9b18bcef043a4f0292212241ce5987


[ROCm/ROCR-Runtime commit: bc43f97964]
2017-02-07 01:22:30 -05:00
Sean Keely 2755a4e0a7 Remove old names from API table interfaces.
Change-Id: I41ca38b596e1dac85e871f583e3ffe7078b790e7


[ROCm/ROCR-Runtime commit: 796d31d94d]
2017-01-27 17:45:26 -06:00
Christophe Paquot 4bb9fb4469 Add new 1.1 image APIs
Note: Implementation same as 1.0 APIs for now.
      The followup change will have the complete implementation.

Change-Id: Ife633f74ff27eee0bb9b0c46952cf5233b0114e8


[ROCm/ROCR-Runtime commit: a324f21a46]
2017-01-20 19:37:03 -05:00
Ramesh Errabolu 99ec6c549b Add agent properties for Tools
Change-Id: I7bc49d35dc559f9c9058aae591b88c5ecc4b3ce5


[ROCm/ROCR-Runtime commit: 8ab28d1a51]
2017-01-16 13:50:18 -06:00
Christophe Paquot 321fdd26bf Add image 1.1 API changes to current code base
Initial work to import the latest (1.1) hsa_ext_image extension.

Change-Id: I51d70ef26f97250c884b3def2088be0d7eb04eb3


[ROCm/ROCR-Runtime commit: 31d379c821]
2017-01-12 14:49:54 -08:00
Kent Russell 56096ff555 Revert " Add image 1.1 API changes to current code base"
Currently HSA HW Profiler is failing to build due to this patch

This reverts commit 91866d4bbb.

Change-Id: Iabb2b958f33ba614a24b61bb370905b3b7362708


[ROCm/ROCR-Runtime commit: 5162a76616]
2017-01-12 06:43:54 -05:00
Christophe Paquot 91866d4bbb Add image 1.1 API changes to current code base
Initial work to import the latest (1.1) hsa_ext_image extension.

Change-Id: I4d55adb09ba4d4dbd43d47a4bc54077d4bc531d2


[ROCm/ROCR-Runtime commit: e0ce8855dd]
2017-01-11 17:31:37 -05:00
Chris Freehill 1df3375ec4 HSA Enabled IPC support
Uncommented HSA IPC code.
Changed hsa_amd_ipc_memory_t to be 8 uint32_t's instead of 9 to
match spec

Change-Id: Id1523125e9b876a23c3743df1be29c98b47f6725


[ROCm/ROCR-Runtime commit: 160f8c5880]
2016-12-15 19:16:29 -05:00
Ramesh Errabolu a4c8e0fdca Per review comments
Change-Id: I44585a6dcf3c4f0ce10f0e895270c113790e0652


[ROCm/ROCR-Runtime commit: 935c1b0ba9]
2016-11-28 12:41:32 -06:00
Ramesh Errabolu e3d8eac639 Initial set of changes for ThreadTrace
Change-Id: I07ce31f9b4f508cef0fc9ca6dadcf26b6c90361e


[ROCm/ROCR-Runtime commit: eb2efb83d1]
2016-11-21 23:40:56 -06:00
Sean Keely 2e8c176e11 Add InterProcess memory sharing support.
Support is disabled pending KFD / Thunk readiness.

Change-Id: I55def748e3d56cbfcfa6e24983a0ab78567aa81d


[ROCm/ROCR-Runtime commit: 8081758a55]
2016-11-15 18:58:29 -06:00