Commit Graph

153 Commits

Author SHA1 Message Date
Saleel Kudchadker f903a6c2c9 SWDEV-371123 - Fix barrier value packet header
- Use correct header for vendor packet
- Pass one dependent signal when submitting a marker if there is one

Change-Id: I4efc70dd5204b559de26f899d0637f50421c8834


[ROCm/clr commit: 77ceb7e9ad]
2023-01-12 04:06:03 -05:00
Saleel Kudchadker 4a92208bb7 SWDEV-371123 - Fix typo for log print
Change-Id: I18297a032d6fc9a030863eac7c525e86e9fdcd29


[ROCm/clr commit: 6651aab28d]
2023-01-05 17:46:22 -05:00
Jaydeep Patel 7df45ffc38 SWDEV-366087 - Pass pitch and slice pitch to blit kernel from rect struct.
Change-Id: I1ffe54929db59a40e2a1ae19c125f8d8e81b07ec


[ROCm/clr commit: 9076d9a518]
2022-12-20 16:43:49 +00:00
Ioannis Assiouras 733c8d1d1c SWDEV-369581 - Convey copy API metadata to ROCclr
Change-Id: I569462d6d268700d419510255e201bf7d80d6714


[ROCm/clr commit: 72b45e2a1f]
2022-12-09 00:27:15 -05:00
Saleel Kudchadker 7ba49616e9 SWDEV-371123 - Use barrier value packet for event records
Change-Id: I5e5e5e89e0d96a2430b4682d168b76848fa5b94e


[ROCm/clr commit: 4f64d89026]
2022-12-07 17:57:36 -05:00
Sourabh Betigeri 7aa958a8f7 SWDEV-305894 - Cooperative groups grid and multi grid sync support for gfx940+
Change-Id: I35d72f1cb50c3a96eee56a612b72d641852b145f


[ROCm/clr commit: 5d7f3f9f3c]
2022-12-05 16:30:30 -05:00
Saleel Kudchadker f14b550e87 SWDEV-371123 - Refactor dispatchBarrierValuePacket
Change-Id: I846bd3f60dd8db125e2ca5475e9d25fdd567922b


[ROCm/clr commit: 10ecf8f159]
2022-12-02 12:22:31 -05:00
kjayapra-amd 1fea133877 SWDEV-358915 - Wait for 10 micro secs, if the next engine is SDMA.
Change-Id: Ib3ed91510e62090f47d4f55be8de635caaee083d


[ROCm/clr commit: 61b6a94627]
2022-11-28 12:14:16 -05:00
Saleel Kudchadker b157c8eeea SWDEV-301667 - Improve logging
Change-Id: Ifa6da876b85cb503967cf09aac6d477b10db8e63


[ROCm/clr commit: feca11d5e3]
2022-11-04 18:23:18 -04:00
Saleel Kudchadker 994c9384e7 SWDEV-364052 - Print free memory on queue callback
Change-Id: I7d15b6f6277326d5f3e9b784a3443f18ec6ba58a


[ROCm/clr commit: 3e465c5ff8]
2022-11-04 13:19:33 -04:00
Laurent Morichetti 6d3939cd49 SWDEV-351980 - Store the correlation ID in the dispatch packet
The profiler can retrieve this correlation ID to attribute waves to
specific dispatch locations.

Change-Id: I700e8a91219d612f6a2028c0dda0c92753f3526a


[ROCm/clr commit: b043b4f5a2]
2022-11-02 23:40:10 -04:00
jatang 53f289e0ac SWDEV-293816 - Only dispatch Counter Aql packet when it is created successfully.
Change-Id: Ic8a7374d19012754c6de5d483ec5d07a56661d1b


[ROCm/clr commit: 166ef6b622]
2022-10-31 15:11:41 -04:00
Saleel Kudchadker 0d1d52d249 SWDEV-301667 - Use queue base address for AQL log
Change-Id: Ie525991b341deeb93ab3cb2d77550e8e1d87ee20


[ROCm/clr commit: cf1fd98074]
2022-10-31 13:54:49 -04:00
Sourabh Betigeri 644fc9421c SWDEV-361730 - Fix to match the kernel arg allocation sizes between gpu visible mem and host/runtime mem
Change-Id: I6495aa57e97b46373c1d90cc230435780fdcf3ef


[ROCm/clr commit: b2665ccc4b]
2022-10-20 14:20:37 -04:00
Saleel Kudchadker 434df167df SWDEV-359548 - Detect fence optimization
- Use a dirty flag to determine fence optimization
- If fence is dirty submit a marker at top level to sync.

Change-Id: I53fb19b5bb05b7c7b37c41637a6c7aaf870b639a


[ROCm/clr commit: 6405b6cdba]
2022-10-10 14:15:16 -04:00
Saleel Kudchadker 0dd9add8e1 SWDEV-352001 - Store last scopes for dispatch
- Store last fence scopes and use the last value to determine if we need a cache flush again. This helps cases where hipExtLaunchKernel API is
used.
- Purge code for ROC_EVENT_NO_FLUSH

Change-Id: I531cf9c9c60d5e2b3a9e265d0f52f79ed2fa8a8c


[ROCm/clr commit: 9b5cbd37a2]
2022-09-22 11:34:10 -04:00
Laurent Morichetti 0cd3ec5056 SWDEV-351980 - Consolidate registration tables in the roctracer library
Remove the activity_prof::CallbacksTable. The table was redundant with
the information already stored in the roctracer library. Instead use a
single callback into the roctracer library to query whether the activity
is enabled, and to report it.

Change-Id: I2e05b0881bb4a1953c14361d00ea310d02eb6e0c


[ROCm/clr commit: 52eb28930a]
2022-09-21 05:54:09 -04:00
Rakesh Roy 9cdd929342 SWDEV-353941 - Fix hipMemset latency issue for hipMallocManaged
- In case of HMM, use blit kernel instead of CPU memcpy for hipMemset

Change-Id: I89bfc96ff01a2375ed8df1b1c6bc05357dea84f7


[ROCm/clr commit: f097cda948]
2022-09-07 03:20:58 -04:00
German 5ed568998f SWDEV-349794 - Fix time accumulation
If the execution command had a split into multiple HW operations, then runtime has to accumulate time for all operations

Change-Id: Iaba31e96250918d8190bf63adb4c07730fdfefbf


[ROCm/clr commit: 24f5362296]
2022-08-24 09:53:54 -04:00
Maneesh Gupta 92f6e1a0d2 SWDEV-350289 - Fix build warnings due to file re-org
Change-Id: I0066fa163b9f25fdde4c5b3baed1ef0654390c06


[ROCm/clr commit: 289062682a]
2022-08-10 03:05:56 -04:00
Sarbojit Sarkar a0981a092b SWDEV-343921 - added Max stack size
Change-Id: I5c1a088e05215ca951afc9d92f8d298c5e3a65f1


[ROCm/clr commit: 27a08a132f]
2022-08-02 07:13:18 -04:00
German Andryeyev 110e3e68a0 SWDEV-340703 - Use different status value for the callback event
Change-Id: Ida725df53abfbf348b18e24c19edf011dc9192dd


[ROCm/clr commit: 6844b8c7e0]
2022-06-30 11:03:02 -04:00
Saleel Kudchadker b3ad41f6e4 SWDEV-335780 - Indicate if handler is queued
Maintain status of handler callback. For event records we no longer
submit callbacks to reduce the load on the async handler thread. However
without a callback we leak command memory/decrement refcounts. Indicate
status of the handler which we can use to queue a callback when
finish is called.

Change-Id: I89fd02f3d047a0e8162664ee17581a14795f1928


[ROCm/clr commit: 5df34a2f7a]
2022-06-14 20:55:06 -04:00
German Andryeyev acf2856677 SWDEV-339296 - Delay hidden heap allocation till the usage
Move hidden heap creation to the kernel launch to make sure it's
allocated on the actual first usage.

Change-Id: I1b65a82fc06d9129ed45a69765bf14ea3d945b04


[ROCm/clr commit: 4975f69337]
2022-06-14 12:18:34 -04:00
Sarbojit Sarkar ee5bcf6444 SWDEV-331066 - support for LimitStackSize
Change-Id: Ie6ae74f008b4f72de83663194aafb0ebdddfc8b6


[ROCm/clr commit: 51a00aeefe]
2022-05-19 00:24:06 -04:00
kjayapra-amd ae0b32126b SWDEV-331355 - Fixing the surface object on fillMemory function call.
Change-Id: Ieaa359ea8f31b0251d54b720469cdefde202579f


[ROCm/clr commit: 643ee46f28]
2022-05-04 14:24:03 -04:00
Saleel Kudchadker d9c2aee526 SWDEV-334152 - Set release as systemscope
Set release scope as system for dispatch AQL when events are passed to
hip*LaunchKernelGGL*

Change-Id: I93b91591e0ab023f1ecc5247f7905eca26147358


[ROCm/clr commit: 02566677cf]
2022-04-29 13:19:29 -04:00
German Andryeyev d5bc650de9 SWDEV-307184 - Fix a regression from dafc64ea
Disable hostcall buffer in OCL for now. COv5 can add hostcallbuffer
metadata for unknown reason. OCL may fail the buffer allocation
and kernel launch.

Change-Id: I34a6a45bac86c57422b764c0d69760c96920d6c5


[ROCm/clr commit: 934149ff0a]
2022-04-28 11:57:48 -04:00
Ajay 9fcc7a7219 SWDEV-332522 - streamOpsWrite & streamOpsWait to accept memory offset
Change-Id: I4b6ecb4d80c093d038d86616a637c4bb465ae24e


[ROCm/clr commit: d2f837d25f]
2022-04-25 14:59:36 -04:00
Jason Tang 7bdbf61a9d SWDEV-324411 - Use blit kernel for copyBufferRect if atomic is not supported
Change-Id: I2e110fd3418117ee9c7ede379244d2c6c4f248b7


[ROCm/clr commit: ed7737564e]
2022-04-24 11:41:16 -04:00
sdashmiz dafc64ea0a SWDEV-204804 - Detecing pcie atomic support
- check pcie atomci support for printf functionality
- if not enabled printf wont work

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ib366e8e71772b02210c4a830bca4bd8cc7a11664


[ROCm/clr commit: 15f1632dfa]
2022-04-22 08:53:16 -04:00
Julia Jiang 1320312a62 SWDEV-330164 - Fix in conformance svm_enqueue_api crash
Change-Id: I12eca6ca3e8d722b7534047fca79b289604aa2b0


[ROCm/clr commit: b1611e0123]
2022-04-20 13:20:18 -04:00
Saleel Kudchadker b306843e26 SWDEV-332512 - Signal pool changes
Create a new signal if the next set of signals are busy

Change-Id: I5108e68c88fe41e3a45bad4495ebdf3742e76dcd


[ROCm/clr commit: 9ec8a7306d]
2022-04-18 15:58:38 -04:00
Saleel Kudchadker cad3dfe4ec SWDEV-301667 - Separate scope from marker_ts_
Change-Id: I19f4d394e898bfb8c9d9a2c2edf9d5bf5def3b08


[ROCm/clr commit: b6cbfaf499]
2022-04-16 19:26:31 -04:00
German Andryeyev 4b4137ae63 SWDEV-332512 - Add ROC_SIGNAL_POOL_SIZE
Default value is 32 HSA signals in the pool.

Change-Id: Icb69413d3ff6ef228d9a9e22fd024e72c6d8ebe4


[ROCm/clr commit: 7975a07112]
2022-04-14 17:32:00 -04:00
Saleel Kudchadker 3d0100c5ab SWDEV-301667 - Add cache state for a device
- Add a global cache state for a device to indicate scopes of submitted
AQL packets
- Remove scopes for TS marker if hipEventReleaseToDevice is passed. Set
env ROC_EVENT_NO_FLUSH=1 to use NOP AQL for event records.
It would flush caches by default with system scope release.
- Calling finish() should ensure if caches are flushed, if not queue a
marker

Change-Id: Ibbbdbb1cd7ac61cb35649169212142545be159e0


[ROCm/clr commit: 8eeaa998c0]
2022-04-12 12:27:31 -04:00
Maxime Chambonnet 38928e85c1 SWDEV-1 - ROC CLR typos
This is cherry-picked from this github issue:
https://github.com/ROCm-Developer-Tools/ROCclr/issues/28

Change-Id: I236f4f25a2dabe05883159af0fab0bad06ab0fd0


[ROCm/clr commit: d45794e985]
2022-04-11 14:24:39 -04:00
German Andryeyev 4715a87d44 SWDEV-307184 - Report 1 for unused dimensions
Remove assert for kernel arg size, because COv5 reports a value
bigger than the actual usage in the most of cases

Change-Id: I8e15bc45a9e21b58a5894f9977511ca84408ce61


[ROCm/clr commit: 2be0b1e612]
2022-04-08 13:43:37 -04:00
kjayapra-amd ba0119e933 SWDEV-331104 - Size passed to fillBuffer should not be 0.
Change-Id: Ifbc6047fafa0e55b5ab956cf3b7254c7e20b1e88


[ROCm/clr commit: b3b88ef926]
2022-04-08 09:29:55 -04:00
German Andryeyev e09245ceae SWDEV-307184 - Move local size calculation
With COv5 local size calculation must occur before
runtime programs kernel arguments

Change-Id: I0726c6529bde69b8fcf5360aa83986cf84e04168


[ROCm/clr commit: caa6110c29]
2022-04-05 11:19:51 -04:00
kjayapra-amd 2ab9ef0915 SWDEV-325776 - Adding device release scope for kernel dispatch packet
Change-Id: I8ea763f4c0239c410143b748c05822e9f6694412
(cherry picked from commit ec4894f8a27a3330b895a0ded385ab96f5ef242d)


[ROCm/clr commit: 378a427d8c]
2022-04-01 08:17:29 -04:00
kjayapra-amd 31c0525344 SWDEV-305527 - Changes to handle memset blit kernel that takes width, height and depth. This also fixes SWDEV-317261.
Change-Id: Ic85f63a95d9d8f48884fc8c7fd95cbb496dfbbca


[ROCm/clr commit: 7fb80a027a]
2022-03-31 09:02:33 -04:00
Saleel Kudchadker f99304adcd SWDEV-322225 - Use numa_allocate_bitmask
- Fix a crash with AMD_CPU_AFFINITY=1 as numa_bitmask_alloc isnt the
right api to allocate bitmask
- Do not set affinity for ROCr thread. It worsens performance rather
than any improvement.
- Fix regression from my previous change for event handler.

Change-Id: I3ea75adc2a6333f29752283eddd5b555e9b58cc5


[ROCm/clr commit: 802c2c8a9f]
2022-03-26 13:24:51 -04:00
Saleel Kudchadker 4dbec887a2 SWDEV-301667 - Selectively queue handler
- Queue handler for hipEventRecord(aka marker_ts_) only if there is a
callback associated with it.

Change-Id: I8a9877ae0e342556053abbaacc9510744a8e772a


[ROCm/clr commit: 3c3c0ca4c5]
2022-03-24 19:46:28 -04:00
German Andryeyev 7d5ed33e8f SWDEV-307185 - Create heap for device memory allocator
Pass the allocated heap with the kernel arguments

Change-Id: Icdec09b7f937845c39e21cbca7071dc3ba791af9


[ROCm/clr commit: 7b114a2b8b]
2022-03-04 00:44:41 -05:00
German Andryeyev c52280ae72 SWDEV-323702 - Use active queue for transfer
Pass active queue for transfers in the cache coherency layer.
That will allow to use device transfer queue only for
cases when active queue isn't available, because using device
transfer queue from another active queue may cause a deadlock

Change-Id: Ifbe7e0303b77dbf6eeda3939ffbc25a3df7472de


[ROCm/clr commit: 95d55fdfa8]
2022-02-18 09:10:53 -05:00
German Andryeyev 7c8a7ddf5e SWDEV-323364 - Fix a typo
Change-Id: I2031296ab9451342d5930b8b2d3d2e6277946647


[ROCm/clr commit: fbf531398a]
2022-02-17 20:50:29 -05:00
Saleel Kudchadker de9a5438b9 SWDEV-322605 - Fix infinite loop condition
If GlobalMemCacheLine reported is 0, runtime may run into an
infinite loop as the KernelSegmentAlignment is chosen as size of the
cache line.

Change-Id: Ide547940cc0407f16fab10ee210b4fd3ae4eaafc


[ROCm/clr commit: 041ddc0c1c]
2022-02-16 13:16:18 -05:00
German Andryeyev bd96ef9a34 SWDEV-307184 - Add support for the new metadata
Metadata in Codeobject version 5 is the extension of CO3 and CO4.
Add the detection of the new fields and program them in
the setup of the kernel arguments.

Change-Id: I27e58df77320ad00f4f16d35912668db803826af


[ROCm/clr commit: be6a06384e]
2022-02-07 14:05:58 -05:00
Satyanvesh Dittakavi 85c2cac111 SWDEV-306939 - Fix vdi errors/warnings by CppCheck
Change-Id: I56d910f8363787f1050d5d7e8064ed553c5827fd


[ROCm/clr commit: e20dd61932]
2022-01-12 00:22:16 -05:00