커밋 그래프

454 커밋

작성자 SHA1 메시지 날짜
Ioannis Assiouras b445717f72 SWDEV-369547 - Ensure that ipc_mem_detach is not called for non-ipcShared MemObj.
Change-Id: Ia73b60b9f08d593301879e0f72c395edbc215112
2022-11-30 02:16:13 -05:00
kjayapra-amd 61b6a94627 SWDEV-358915 - Wait for 10 micro secs, if the next engine is SDMA.
Change-Id: Ib3ed91510e62090f47d4f55be8de635caaee083d
2022-11-28 12:14:16 -05:00
Anusha GodavarthySurya 446a3fc688 SWDEV-354074 - cache hsa queue and delete when device is destroyed
Change-Id: I26365521d785f0bc612e32bdcdb6caacb3af9a11
2022-11-23 07:17:45 +00:00
Alex Xie 9e00c674c8 SWDEV-363271 - Add some performance counter logs
Change-Id: I368ba4afe47357eb6051b2a06f762b8050e5a560
2022-11-19 16:27:14 -05:00
German 79d12df147 SWDEV-363074 - Adjust staging copy limits in Windows
Pinned copy can cause big performance drops, because slow pinning under Windows.
Use up to 128MB for staging transfers. Change staging buffer size to 4MB.
Linux path should still have the old defaults.

Change-Id: I954edceb3ec89e8e670be116aa2d0a9564c8b11c
2022-11-17 14:48:16 -05:00
German b40823ccc1 SWDEV-328670 - Enable ROCr interop
Change-Id: I932afa2a0e75b1f1771c4be1e984b32966636afb
2022-11-17 09:40:34 -05:00
Maneesh Gupta a52f5bda8f SWDEV-299940 - Query global memory available on device with HSA attribute HSA_AMD_AGENT_INFO_MEMORY_AVAIL
This reverts commit 4afca0647e.

Reason for revert: ROCr query should now be usable in upcoming release.

Change-Id: I2207761ca6af5d585d090bae1af09eb9a8e9bad6
2022-11-09 10:48:47 -05:00
Saleel Kudchadker feca11d5e3 SWDEV-301667 - Improve logging
Change-Id: Ifa6da876b85cb503967cf09aac6d477b10db8e63
2022-11-04 18:23:18 -04:00
Saleel Kudchadker 3e465c5ff8 SWDEV-364052 - Print free memory on queue callback
Change-Id: I7d15b6f6277326d5f3e9b784a3443f18ec6ba58a
2022-11-04 13:19:33 -04:00
Laurent Morichetti b043b4f5a2 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
2022-11-02 23:40:10 -04:00
jatang 166ef6b622 SWDEV-293816 - Only dispatch Counter Aql packet when it is created successfully.
Change-Id: Ic8a7374d19012754c6de5d483ec5d07a56661d1b
2022-10-31 15:11:41 -04:00
Saleel Kudchadker cf1fd98074 SWDEV-301667 - Use queue base address for AQL log
Change-Id: Ie525991b341deeb93ab3cb2d77550e8e1d87ee20
2022-10-31 13:54:49 -04:00
Ajay 261620a2ef SWDEV-357207 - Linux: enable StreamWrite/Wait APIs in deviceAttribute
Change-Id: I593df2dbb7a0233dd42f8d873510d85bbb27feff
2022-10-21 12:44:35 -04:00
Sourabh Betigeri b2665ccc4b SWDEV-361730 - Fix to match the kernel arg allocation sizes between gpu visible mem and host/runtime mem
Change-Id: I6495aa57e97b46373c1d90cc230435780fdcf3ef
2022-10-20 14:20:37 -04:00
Laurent Morichetti 9a82118c85 SWDEV-362046 - Report HIP_OPS activities using the ROCr driver_node_id instead of the device's index
The ROCclr assigns zero-based IDs to GPUs in the order they are
discovered. That zero-based ID is what is used to identify the GPU
on which the HIP_OPS activity took place.

When multiple ranks are used, each rank's first logical device always
has GPU ID 0, regardless of which physical device is selected with
CUDA_VISIBLE_DEVICES. Because of this, when merging trace files from
multiple ranks, GPU IDs from different processes may overlap.

The long term solution is to use the KFD's gpu_id which is stable
across APIs and processes. Unfortunately the gpu_id is not yet exposed
by the ROCr, so for now use the driver's node id.

Change-Id: Ib78854527d600d175bb76e2df0747c33f898c615
2022-10-20 12:31:30 -04:00
Julia Jiang dacd55f3d7 SWDEV-357122 - fix failure in vdi so as to handle unreasonable input size in MallocManagedNegativeTest
Change-Id: I1ed1916b652afc67327b0935c3c60fc2a404df30
2022-10-20 12:19:22 -04:00
kjayapra-amd 951a5b9e7d SWDEV-307411 - Require comment/message string in guarantee().
Change-Id: I55a699c5366f6a7d167ede4c9be2ec5b15cea9d0
2022-10-13 16:21:21 -04:00
Saleel Kudchadker 6405b6cdba 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
2022-10-10 14:15:16 -04:00
Saleel Kudchadker 9b5cbd37a2 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
2022-09-22 11:34:10 -04:00
Laurent Morichetti 52eb28930a 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
2022-09-21 05:54:09 -04:00
Ajay 373a7d1195 SWDEV-347670 - GPU StreamWait and StreamWrite support in Windows PAL backend
Change-Id: Ic4881305b6332e217f3d3127dce7e9d9d0a7df11
2022-09-15 13:57:40 -04:00
Maneesh Gupta 4afca0647e SWDEV-352502 - SWDEV-355630 - Revert "SWDEV-299940 - Query global memory available on device with HSA attribute HSA_AMD_AGENT_INFO_MEMORY_AVAIL"
This reverts commit 73021582d3.

Change-Id: I86175ccf2b543c3ff3dffec6ccae410976972f22
2022-09-12 07:34:32 -04:00
Rakesh Roy f097cda948 SWDEV-353941 - Fix hipMemset latency issue for hipMallocManaged
- In case of HMM, use blit kernel instead of CPU memcpy for hipMemset

Change-Id: I89bfc96ff01a2375ed8df1b1c6bc05357dea84f7
2022-09-07 03:20:58 -04:00
Sourabh Betigeri b15b3173f4 SWDEV-326798 - Avoids waiting for the signal with a timeout and instead queries the current status
Change-Id: I8b4052d5439ca930ceb924da30cb0335f0826a95
2022-09-06 12:49:46 -04:00
German 24f5362296 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
2022-08-24 09:53:54 -04:00
sdashmiz 50e0ddb055 SWDEV-350569 - add proper indexing for attribute
- rocr attribute needs to be updated after each iteration

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I3afb2d7954ef3de37f5f5f9d3cc7757fdacffcec
2022-08-18 09:59:42 -04:00
Maneesh Gupta 289062682a SWDEV-350289 - Fix build warnings due to file re-org
Change-Id: I0066fa163b9f25fdde4c5b3baed1ef0654390c06
2022-08-10 03:05:56 -04:00
Sarbojit Sarkar a28b22d9b4 SWDEV-344210 - Fixed page fault when mempool accessed from remote device
Change-Id: Ie41b0c0499f7733d4541ccd50b3d0d976c6431c9
2022-08-09 23:26:27 -04:00
Anusha Godavarthy Surya 73021582d3 SWDEV-299940 - Query global memory available on device with HSA attribute HSA_AMD_AGENT_INFO_MEMORY_AVAIL
Change-Id: Ifcfb95f59d110b3b037a7131be21d5348601d2e2
2022-08-05 06:55:12 -04:00
Sarbojit Sarkar 27a08a132f SWDEV-343921 - added Max stack size
Change-Id: I5c1a088e05215ca951afc9d92f8d298c5e3a65f1
2022-08-02 07:13:18 -04:00
sdashmiz e176e27bf7 SWDEV-334233 - add support for p2p in windows
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I9109120b5444c400e65cfff869cb36e876ffd1fc
2022-07-14 15:07:33 -04:00
Saleel Kudchadker 6a77f73050 SWDEV-301667 - Increase kern arg pool
Change-Id: Ie4b087ae4aec08fccaaa7958cdf545e4e27ac5c1
2022-07-12 18:42:29 -04:00
Tao Sang 1e26165cd0 SWDEV-286739 - Support hipDeviceAttributeWallClockRate
Part 1: Query constant frequence of wall clock from RocR

Change-Id: I52cbba6d67d11cde6d019c5ab530059f426a9bf2
2022-07-12 17:53:11 -04:00
Saleel Kudchadker 175ad024d3 SWDEV-260345 - Manage constant buffer for blit
- Leverage managed buffer that would use chunks for fill pattern. Use a
different chunk for the next fill to avoid wait

Change-Id: I254483c867e112f66564ffd8f55e0a605d8896c9
2022-07-12 12:41:02 -04:00
Saleel Kudchadker faaa41aab8 SWDEV-335626 - Use ROCr copy for IPC
Detect IPC buffer and use ROCr copy api instead of blit

Change-Id: Ie6bdd6fc45dbd7457611011d81570b53d5fd5276
2022-07-08 13:32:19 -04:00
German Andryeyev 6844b8c7e0 SWDEV-340703 - Use different status value for the callback event
Change-Id: Ida725df53abfbf348b18e24c19edf011dc9192dd
2022-06-30 11:03:02 -04:00
German Andryeyev d8e4a289b3 SWDEV-344280 - Use coarse grain sysmem for kernel arg on MI200
Change-Id: I9596f0e8b88699538ec271b3a4345e5f75b968e3
2022-06-29 13:04:46 -04:00
haoyuan2 0a43f6bff3 SWDEV-343162 - fix OCL test regression
For OCL, keep original control logic
FOr HIP, keep the fix for SWDEV-338781

Change-Id: I89de8d1e73cd103b3b4f62206eed72d45695dd6e
2022-06-24 13:23:10 -04:00
German Andryeyev 73ec7bada6 SWDEV-341316 - Copy image SRD only if it's valid
Change-Id: I971a21fe99fd07b21cfd3dbe4e7ed33c0ea322f4
2022-06-16 09:18:04 -04:00
haoyuan2 6937fcae3a SWDEV-338781 - fix blender crash issue on Navi1x
remove incorrect control logic which caused seg fault on Navi1x

Change-Id: Ic56e8a73c53062bd86adcf57d0b66e00e21734ec
2022-06-15 10:54:57 -04:00
Saleel Kudchadker 5df34a2f7a 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
2022-06-14 20:55:06 -04:00
German Andryeyev 4975f69337 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
2022-06-14 12:18:34 -04:00
German Andryeyev 830898753d SWDEV-336024 - Clear device heap to 0 in ROCr path
Change-Id: Id100ca6d6d5bd7fb16ca8c98ff0b12c9df1d69ab
2022-05-20 11:51:08 -04:00
German Andryeyev 07c1b9a998 SWDEV-336024 - Clear device heap to 0
This reverts commit 04bfd93569.

Reason for revert: Fix regressions

Change-Id: I7d883e1c3cbd27bb64b581ec800243ad7dfe24fd
2022-05-19 09:10:08 -04:00
Sarbojit Sarkar 51a00aeefe SWDEV-331066 - support for LimitStackSize
Change-Id: Ie6ae74f008b4f72de83663194aafb0ebdddfc8b6
2022-05-19 00:24:06 -04:00
German Andryeyev 04bfd93569 SWDEV-336024 - Clear device heap to 0
The heap must be cleared once per device, but ROCclr doesn't
create a queue per device in HIP. Hence, the clear operation will
be performed during the first queue creation.

Change-Id: I52ceb06d67d11cde6d019c5ab510059f426a9bfb
2022-05-11 11:03:56 -04:00
Christophe Paquot b4645c7d4e SWDEV-322620 - Virtual Memory Management
Add a virtualMemoryManagement_ flag to device.info.

Change-Id: Iabd039010d83fc51b4bcef600c609f5c65e7b1ae
2022-05-09 22:54:42 -07:00
kjayapra-amd 643ee46f28 SWDEV-331355 - Fixing the surface object on fillMemory function call.
Change-Id: Ieaa359ea8f31b0251d54b720469cdefde202579f
2022-05-04 14:24:03 -04:00
Saleel Kudchadker 02566677cf SWDEV-334152 - Set release as systemscope
Set release scope as system for dispatch AQL when events are passed to
hip*LaunchKernelGGL*

Change-Id: I93b91591e0ab023f1ecc5247f7905eca26147358
2022-04-29 13:19:29 -04:00
German Andryeyev 934149ff0a SWDEV-307184 - Fix a regression from 15f1632d
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
2022-04-28 11:57:48 -04:00