Gráfico de Commits

115 Commits

Autor SHA1 Mensagem Data
Jaydeep Patel 09a081235c SWDEV-391731 - Check thread local list too.
With global flag, In addition to global vector, we need to check
thread local vector too. If both of them are empty then only
return false.

Change-Id: I3a24d16a35c702b34b9a8867dc410ebd80108f25
2023-04-19 01:00:09 -04:00
German 1e88d2c52f SWDEV-380703 - sync all streams individually
Avoid syncing blocking streams with the default stream,
since that introduces extra command dependencies and
doesn't allow to destroy memory after last submission

Change-Id: I618e9bd2091c4cf9157125612d8c4759030c5a80
2023-04-05 16:37:49 +00:00
Jaydeep Patel 4ac87c051d SWDEV-362372 - Correct error code.
Change-Id: Ife4f6e3481d0e804e676fe076f0928870c6bae57
2023-04-05 16:37:18 +00:00
Christophe Paquot 6e86d29a58 SWDEV-301667 - Optimize lock for graph global capture mode
Remove unneeded lock and add smaller scope

Change-Id: I03a437057d54ce2d72c07a080bb872693b7f3f6c
2023-04-05 10:58:14 +00:00
Sourabh Betigeri 7809d2846b SWDEV-387810 - Fixes to verify if the current stream matches the capture stream
- invalid to synchronize or query the execution status of a capturing stream but non-capturing streams can.

- If any local thread has an ongoing or concurrent capture sequence initiated with hipStreamCaptureModeGlobal, it is prohibited from unsafe calls

Change-Id: Ifa641e807216d3b7c3e8c2fb1be2f7a50bd641df
2023-04-05 10:53:33 +00:00
Ioannis Assiouras e6520ddf8a SWDEV-388278 - Fix return HIP_RETURN(x)
Change-Id: I940ee3660a2427eade8690a9318966fb04a1fbe8
2023-03-13 13:32:55 +00:00
Jatin Chaudhary a7049bf7a0 SWDEV-372153 - Add hipStreamGetDevice Implementation
Change-Id: Ifd1f13e311e8221ca6d94cf27f9131eb97678067
2023-03-01 04:35:49 -05:00
Sourabh Betigeri 08c8972d97 SWDEV-326798 - Revert "SWDEV-326798 - Changes in stream sync behavior"
This reverts commit 51adec2730.

Reason for revert: HIP tests on windows fails

Change-Id: I795ed19d76a41e2fd9971414cefa5bd3be45d4bc
2023-02-28 02:28:12 -05:00
Sourabh Betigeri 51adec2730 SWDEV-326798 - Changes in stream sync behavior
Change-Id: If6d0b3876a9bf197c7e49273eaa5ca5bfae46d0b
2023-02-27 16:48:14 -05:00
sdashmiz ea5838320e SWDEV-379388 - remove check for all streams done
- cuda shows  a different behaviour and different error need more
  investigation

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I68771102ba4dff6157bca34a4135cb245f023d08
2023-02-23 22:56:23 -05:00
Saleel Kudchadker 7fc5ae2226 SWDEV-364604 - Add support for hipEventDisableSystemFence
Change-Id: I1a6451c873fb22729ac61e4e80f8531251e990f0
2023-02-21 23:11:40 -05:00
Ioannis Assiouras e3633dc8f4 SWDEV-381402 - Derive hip::Stream from amd::HostQueue
Change-Id: I6c1aca5eb350c32d974ae4ffcc725705355956d8
2023-02-21 18:12:03 -05:00
Ajay GunaShekar 1f4176062b SWDEV-372757 - Don't destroy null queue in MT
This reverts commit f39655c0c8.

Reason for revert: patch does not fix all stream hangs. So another patch was merged which fixes all issues.

Change-Id: I332d1ea29c23747b46b7667fe3e34e0ceefd2b23
2023-01-25 23:41:16 -05:00
sdashmiz a4dd362a1d SWDEV-379151 - correct error status
- if the stream is null ptr and there is capture ongoing return an error

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Iff33e4aebc253fb7bb56daf5c455722d726c6705
2023-01-25 15:06:38 -05:00
sdashmiz be966acb0c SWDEV-360031 - check for stream capture finish.
- stream capture should be done before any sync APIs.

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I3d65f67ee68777be71f97f48d460ccaefdd4e1af
2023-01-16 13:09:24 -05:00
sdashmiz 338307ef2c SWDEV-374390 - add correct error
- null stream should return error on host function

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I17659ad7af0814091dbf6cb4a2cb2644514551f0
2023-01-16 13:08:23 -05:00
German f39655c0c8 SWDEV-372757 - Don't destroy null queue in MT
Skip destruction of the null queue for MT. Windows can destroy worker
thread on exit during the stream destruction, causing a race condition.

Change-Id: I3e4bc3ab2b477d38c0aec1fc59e6f1af0f8f6b0f
2023-01-09 00:03:09 -05:00
German Andryeyev 38ad6234f9 SWDEV-360031 - Erase destroyed stream from capture
Parallel streams can be destroyed during capture. Make sure runtime
removes the destoryed streams from the list of parallel captured streams

Change-Id: I46b6cbb951e8711f0bf02f2826c3b890b2541ffe
2023-01-03 13:34:07 -05:00
sdashmiz c5e7b56463 SWDEV-366974 - add proper error
- Null stream correct error when blocing stream is being captured

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I0d902a4f4ef02736a6db60ba7bffa7c20011bc84
2022-11-21 10:39:21 -05:00
Jaydeep Patel e7a34f9efe SWDEV-365048 - extra marker is required for HW event check, which is done before the callback is finished.
Change-Id: Ib46bfc4e060a60fb14aa782688d35b34534cca65
2022-11-04 00:34:14 -04:00
German 413cc757af SWDEV-363602 - Notify cmd queue about callback wait
Remove extra barrier, since ROCR backend in DD mode blocks HW queue now when a callback is injected
Add a notificaiton for MT mode about possible waiter for a callback

Change-Id: Ifd70ce5597e1ba868e4197ad1850ace11a4f90ae
2022-10-24 10:56:20 -04:00
Saleel Kudchadker da88091ba4 SWDEV-359548 - Enqueue marker if fence is dirty
The marker would flush any caches.

Change-Id: I5f990285fb3c3a3e8d5d0b2a2d5a9f1fdcea435c
2022-10-13 07:53:01 -04:00
Rakesh Roy 8b391ef18c SWDEV-351969 - TLS Optimization
- Aggregate all TLS(Thread Local Storage) variables into a single class
- This is to improve cache accesses per thread

Change-Id: Ic8361eaeae290fff00254684e309471958365eb9
2022-10-09 22:08:14 -04:00
Laurent Morichetti 82bce811ee SWDEV-351980 - Consolidate registration tables in the roctracer library
Remove the api_callbacks_table_t that was holding the API activities and
user callbacks. Instead use a single roctracer callback (TracerCallback)
used to report both API activities and callbacks.

Remove the hipInitActivityCallback that was setting the ROCtracer
callback and memory pool for asynchronous activities as it did not
allow disctinct pools to be used for each activity.  Instead, use
hipRegisterTracerCallback to set the single roctracer callback.

Change-Id: I4c10f04f29a6e4cce8caf15db3016c3f72c86b04
2022-09-21 02:41:39 -04:00
Anusha Godavarthy Surya 52a22a1263 SWDEV-350025 - Added hipLaunchHostFunc functionality
Change-Id: I6b9d547f7ddf84e617e35ff5d5a490ff458272ef
2022-09-07 17:53:26 +00:00
Jason Tang 97741fe5d4 SWDEV-333471 - Remove HIP_FORCE_QUEUE_PROFILING
HIP_FORCE_QUEUE_PROFILING has been replaced by GPU_FORCE_QUEUE_PROFILING.

Change-Id: Ic8dec4407ef79c27094cb3954e48869075b4732f
2022-08-24 11:53:16 -04:00
Sarbojit Sarkar e9961fedd8 SWDEV-323441 - Phase-II : per thread default stream
Change-Id: I3c796ddaebcf0223d7faf50c425c1674de215f9d
2022-07-11 12:22:23 -04:00
German Andryeyev b4c5a01fbc SWDEV-333607 - Avoid synchronization of all GPU(s)
Use the original device from creation to sync before host memory
free.

Change-Id: I510e34afa7accf69e3d01338587bbc817b981cec
2022-04-21 15:36:04 -04:00
Sarbojit Sarkar fc1f02bbed SWDEV-323441 - support for default stream per thread
Change-Id: I0032da0357f5cffbf5e4ec4a02435d2a128a262b
2022-04-18 23:19:55 -04:00
German Andryeyev 5957ff9f7b SWDEV-311271 - Make sure memory pool can accept default stream
Add lock protection for access to the pool list.
Remove destroyed stream from the list of the safe streams

Change-Id: I1863b89bd3f5e188c161227cc790c3adaf72cc58
2022-04-18 10:34:21 -04:00
Saleel Kudchadker f320acb797 SWDEV-276210 - Honor scopes for hipEventRecord
Honor hipEventReleaseToDevice and hipEventReleaseToSystem flags.
hipEventRecord would flush caches if no release flags are provided. To
change this behavior set ROC_EVENT_NO_FLUSH=1

Change-Id: I03e41b515b1d0cf963b0c2d5b9901b09e71a0e59
2022-04-13 00:35:19 -04:00
Jaydeep Patel c1503da69b SWDEV-330666 - null(default) stream's priority is 0.
Change-Id: I115effc2ddaa28dee32967ee28041b9b8da095b9
2022-04-13 00:28:52 -04:00
Satyanvesh Dittakavi 0af8904b87 SWDEV-326793 - hipStreamGetFlags should query the flags for null stream
Change-Id: I1d1b833704c135b5a0c695b244380ac6c5b8438e
2022-04-06 04:09:17 -04:00
German Andryeyev 539d264eb0 SWDEV-311271 - Initial mempool implementation
HIP_MEM_POOL_SUPPORT controls memory pool support in runtime.
Currently it's disabled by default. The initial change doesn't
include: IPC, MGPU, virtual memory alloc, suballoc, defragmentation,
internal dependencies.

Change-Id: Ibed8528ebec698b045ebb247e49c0ecd6e587ed7
2022-03-31 09:21:37 -04:00
Satyanvesh Dittakavi 4a90c3ccaf SWDEV-327967 - Fix Segmentation fault in hipFree
Queue creation and release fails during hipFree causing seg fault
if the null queue was not created until then and there is no
device memory left.

Change-Id: I118b86b58e777dac5415bc9ba0c4e23c986efa7d
2022-03-22 00:34:40 -04:00
Satyanvesh Dittakavi 796b8c2b62 SWDEV-326800 - hipStreamWaitEvent shouldnt accept flags other than 0
Change-Id: Ic9e2e8e7ac5d34d4286356534810c8e7aa0ee5ad
2022-03-18 03:34:53 -04:00
Ajay 782c411d1a SWDEV-313350 - hipStreamDestroy to remove the stream added to capturing list
Change-Id: I0979766da7f1cf6082835d46701009902f55139e
2022-03-17 17:22:51 +00:00
Saleel Kudchadker 086aee0fcb SWDEV-301667 - Fix build warnings
Change-Id: Ice23b3d1a19a7958ca5c3caff34db2934b361a98
2022-03-02 20:49:18 -05:00
Satyanvesh Dittakavi 6e562f4d83 SWDEV-306940 - Fix hipamd errors/warnings found by CppCheck
Change-Id: Ia93d4f5262ea4269d8031edbfd27033b887e5300
2022-02-05 08:42:47 -05:00
ajay bafc5bb30f SWDEV-314307 - hipStreamWaitEvent to wait on remote IPC events
Change-Id: Id97524ae9bc86d38376af2b0240f10d0dd5cc584
2022-01-19 20:10:02 +00:00
Sarbojit Sarkar 017603703b SWDEV-313905 - Fix segfault
Change-Id: I7b7bbe80a169014b5d4a8de134351b9f8bf11735
2022-01-11 23:40:25 -05:00
haoyuan2 981ef060fb SWDEV-290298 - add a flag to indicate the primary context active status
Change-Id: Id13d132923fcef697b689e75b6aa04060923a2ad
2021-12-09 23:32:16 -05:00
Sarbojit Sarkar 9a51909058 SWDEV-313905 - Fix for hipLaunchCooperativeKernel crash
Change-Id: I41205171a9607962ab6b66f2ebc6f8dc9db7f158
2021-12-05 23:15:06 -05:00
Sarbojit Sarkar 9e4766d990 SWDEV-292547 - Fix for hipStreamPerThread
Change-Id: I9328c7ec92d954433f8e69732d91e65fa6fe013a
2021-10-19 23:26:48 -04:00
anusha GodavarthySurya f6456c5e27 SWDEV-24806 - Added support for event wait and event record graph APIs
hip graph implementation for APIs AddEventRecordNode, AddEventWaitNode, EventRecordNodeGetEvent, EventWaitNodeGetEvent, EventRecordNodeSetEvent,EventWaitNodeSetEvent, ExecEventRecordNodeSetEvent, ExecEventWaitNodeSetEvent

Change-Id: Ifde51f4591067795d6cbf5595372cbdbd8a7bc26
2021-10-06 00:31:42 -07:00
anusha GodavarthySurya 1c51d82dd5 SWDEV-240806 - Added few Graph API Implementation
hipGraph APIs clone, childGraph, RemoveDependencies, GetEdges,GetDependencies, GetDependentNodes, GetType and DestroyNode
hipStream APIs GetCaptureInfo, GetCaptureInfo_v2, UpdateCaptureDependencies.

Change-Id: Ib0f4cb8ea335698eecdd6d744ffab1e954153673
2021-10-05 07:44:54 -07:00
Sarbojit Sarkar 930807fd20 SWDEV-292547 - To match cuda behavior
Change-Id: I3577609fcc5443949f73644196e8310fc49d887f
2021-10-05 00:31:05 -04:00
Laurent Morichetti 3911184607 SWDEV-252801 - Fix return HIP_RETURN(x)
HIP_RETURN(x) is not a value, it is a statement ending with a return,
this commit replaces all instances of "return HIP_RETURN(x)" with simply
"HIP_RETURN(x)"

Change-Id: I03293b2684a65367ff55e02b3a71ea49ec7a517a
2021-09-09 12:19:41 -07:00
anusha GodavarthySurya c9d9fd992a SWDEV-300471 - updated hipFree to wait for all streams to finish
Change-Id: I4983ef48a9e720ed03128d83a8d23ad11024fd8f
2021-09-02 00:45:24 -04:00
Saleel Kudchadker 6f71170772 SWDEV-295275 - Check HW event
Change-Id: I23dfe5626f38b13fbdb6478ab12a0122b03e4a98
2021-08-30 15:55:58 -04:00