Sean Keely
bdb5edad34
Fix memory leak in exception path.
...
Change-Id: Iad5f035cd1909be4a8f1a1f5dd7ca5abec0694b4
[ROCm/ROCR-Runtime commit: 737966eb25 ]
2017-10-21 11:08:00 -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
Chris Freehill
26ebd1727c
Use Major/Minor/Step device numbers to differentiate gfx devices
...
Change-Id: I0901871971a5b33018917ada6c0e69ac7aa91944
[ROCm/ROCR-Runtime commit: a7cbe78366 ]
2017-10-13 16:18:24 -04:00
Sean Keely
93e58b9100
Capture more memory allocation types with the 2MB allocator.
...
TensorFlow was running out of VRAM due to padding up allocations
from legacy memory APIs. These allocations have been added to
the fragment allocator to improve VRAM utilization.
Change-Id: Ic680fff576a0434b3b17a4c91746da44e09957fa
[ROCm/ROCR-Runtime commit: 4f299a9909 ]
2017-10-12 23:22:10 -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
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
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
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
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
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
Evgeny
e18c7098a3
aqlprofile api: adding gfx8 mc counters
...
Change-Id: I84dc06c24b7961dfe665cf7e2ae6cc9ae3b7326b
[ROCm/ROCR-Runtime commit: 09c732c2f9 ]
2017-08-23 15:23:05 -05: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
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
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
hthangir
ea88523fc7
Fix compilation issue reported with GLIBC 2.12 (RHEL 6.9)
...
Change-Id: I770b72ba1d61475a76aa72d0c52ebfb380db6019
[ROCm/ROCR-Runtime commit: 9ee0108e58 ]
2017-07-28 11:11:01 -04:00
Evgeny
4648eb66fd
moving hsa-amd-aqlprofile to ssh://gerritgit/hsa/ec/aqlprofile
...
Change-Id: Ic42752ca41f877db02aa5a5d8d617cd67cce8956
[ROCm/ROCR-Runtime commit: 08d5efe29d ]
2017-07-14 14:59:42 -05: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
Sean Keely
41ab59b1e7
Fix queue interception in tools.
...
1. Correct amd::AqlQueue::ExecutePM4 to support interception.
2. Minor fixes to AqlPacket and SoftCP.
3. Minimal change to disable interception of runtime internal queues.
Change-Id: I103fece2ebf9a188d27f01e61221c737405d7253
[ROCm/ROCR-Runtime commit: bc0bd00746 ]
2017-07-12 16:39:43 -04:00
Sean Keely
17d0e450cb
Correct handling of slow clocks under linux.
...
Change-Id: I9a1b08d5457caa6739220603bbd37b00febc64d7
[ROCm/ROCR-Runtime commit: 29b5b5c029 ]
2017-07-12 12:49:49 -04:00
Sean Keely
19f96afee1
Properly order signal copy agent tagging with copy operation.
...
Change-Id: Ic428c958551279fbea1b2449afba930b82804ede
[ROCm/ROCR-Runtime commit: 3e50adc7ce ]
2017-07-11 13:10:00 -04:00
Sean Keely
cafbebc2a5
Decrement hsa_init ref counter when init fails.
...
Change-Id: If9376344d4b559e601932d070731132c8450104e
[ROCm/ROCR-Runtime commit: c9f0427cb0 ]
2017-07-07 21:21:03 -05:00
Evgeny
ce82829fc1
hsa-runtime integration
...
Change-Id: I48968966ffe164218ebff88d0e3a1268e96bf1dd
[ROCm/ROCR-Runtime commit: 4174f07fd1 ]
2017-07-05 10:55:30 -04:00
Evgeny
7892cc861c
Block list extending
...
Change-Id: Id17efde25fce287296e80f2b37c77b15aa59b561
[ROCm/ROCR-Runtime commit: c533229bc1 ]
2017-06-23 16:37:02 -04:00
Evgeny
9725267667
minor fixes, debug output, comments, using env vars, dead code
...
Change-Id: I08ad73b561709c1818d78a9191c96d6ad141a609
[ROCm/ROCR-Runtime commit: 8618bf7e2c ]
2017-06-22 18:04:26 -04:00
Ramesh Errabolu
1351f204d4
Support Perf Cntrs (PMC) and Thread Trace (SQTT) over AQL queues
...
Change-Id: I716b722895d90b46914c31377e791ad602acecc1
[ROCm/ROCR-Runtime commit: 08e0bca567 ]
2017-06-15 12:58:31 -04:00
Kenny Ho
415027b89f
Revert "Implement memory fault analysis through context save area"
...
This reverts commit 498f3a7188 .
Change-Id: Ibf11b764b383b9be291f3009a30550e1a1e2d115
[ROCm/ROCR-Runtime commit: 5b4df54b10 ]
2017-06-14 14:21:53 -04:00
Evgeny
231d7e8608
GFX8 API
...
Change-Id: I9d0c430e4199f043226c8897f3320a7973cbdeda
[ROCm/ROCR-Runtime commit: 35b376e2ee ]
2017-06-14 12:24:28 -04:00
Jay Cornwall
498f3a7188
Implement memory fault analysis through context save area
...
When a fatal memory fault occurs the scheduler context-saves all queues
in the process and notifies the runtime through the memory event. The
saved state contains all GPR/LDS data at the moment of the fault.
Retrieve this state and present it to the user if HSA_DEBUG_FAULT is set
to "analyze" and the wavefront caused the fault. If amdgcn-capable objdump
is in the PATH invoke this to disassemble code around the PC.
Queue lifetime is now managed by the runtime to allow querying the
context save state for all active queues.
Change-Id: I6fee662fad1c4f9aa125bf5c53d7d0ea1ab32f95
[ROCm/ROCR-Runtime commit: 75c9506f9d ]
2017-06-13 23:12:28 -04:00
Evgeny
2cbff7ec5b
Adding HSA extension AMD AQL profile library, see Readme.txt
...
Change-Id: Icbc1e0fb0185642eabbab411a2138ea030d22be8
[ROCm/ROCR-Runtime commit: 25035b8d09 ]
2017-06-13 16:18:06 -04:00
Evgeny
f17287cec4
Adding GFXIP and kernel code object
...
Change-Id: Ieb2dfea8d9e909efac583f541730d77b7d0c9679
[ROCm/ROCR-Runtime commit: da831502ab ]
2017-06-13 14:58:29 -05:00
Konstantin Zhuravlyov
79a238eb78
Update hsa_isa_t entries
...
- Add 7.0.2 (consumer hawaii)
- Add 9.0.1 (gfx900 with xnack)
- Add 9.0.2
- Add 9.0.3
Change-Id: I6a07797027c4eaf47038837c5ae51e05b2aba0e4
[ROCm/ROCR-Runtime commit: d98e99949a ]
2017-06-12 14:34:11 -04:00
hthangir
f5c06c5911
The fallback path covers not just ARM64, need this for Power as well.
...
Change-Id: I7bbf76f77bd3ac47a0a0987c1e880e23834588e2
[ROCm/ROCR-Runtime commit: a0957bc679 ]
2017-06-07 14:45:29 -05:00
Qingchuan Shi
410520a18a
Patch target name in code object for future-proof
...
Change-Id: I6f12b5e5791bd1745ec3ab76d382fad50282e733
[ROCm/ROCR-Runtime commit: cd35fb280a ]
2017-06-05 19:08:27 -04:00
Jay Cornwall
dfbad5fa07
Enable SDMA on gfx9, disable on gfx8
...
gfx9 has passed qualification. gfx8 stability is under investigation.
Change-Id: Ia72211d47756399ecdfceafeb67c2ab34ebda834
[ROCm/ROCR-Runtime commit: 5db53ceda1 ]
2017-06-02 15:14:14 -05: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
Qingchuan Shi
1dfe4959e5
remove finalizer usage from image ext
...
Change-Id: I282f02cedce790bf42f07c588fd50e346b9ba665
[ROCm/ROCR-Runtime commit: 77e5b30c41 ]
2017-05-29 20:44:52 -04:00