Граф коммитов

103 Коммитов

Автор SHA1 Сообщение Дата
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
Julia Jiang 8835b897d5 SWDEV-286322 - Remove execution permission
Change-Id: I96e603fc8d407c3a76fa1053bad81e45744b59ad
2021-08-05 14:04:06 -04:00
Anusha GodavarthySurya a71f54d9e9 SWDEV-240806 - Added API hipGraphAddMemcpyNode1D, hipGraphAddEmptyNode, hipGraphExecKernelNodeSetParams
Change-Id: I0d7ec8c0ea1abc3fc0f1e10fa7865f355d9cf2ad
2021-07-28 00:09:16 -04:00
Vladislav Sytchenko a89d34d0c9 SWDEV-292547 - Fix Windows build
This addresses the warning `not all control paths return a value`.

Change-Id: Ibbb5eda9758dca5cc94c8efba9bbc6910362d6ba
2021-07-27 10:52:28 -04:00
Sarbojit Sarkar c3ca1faee7 SWDEV-292547 - hipStreamPerThread support
Change-Id: Id621ce073b0fee9eac03c59ffb78b197fda4ddb5
2021-07-26 20:51:51 -04:00
agunashe d9d9e81acb SWDEV-293742 - Update copyrights end year for hipamd
Change-Id: I08f620f84563a9214b59f1b943ed091b67229eab
2021-07-09 12:08:39 -04:00
Christophe Paquot bea4fa8700 SWDEV-276396 - Implement hipDeviceReset
Add a hip::Stream::destroyAllStreams static function to destroy all streams
Also call MemObjMap::Purge

Change-Id: I6ee7e3f26ab1f1870a9271c65e99fb818134482b
2021-06-15 13:13:09 -04:00
German Andryeyev dd8265fc87 SWDEV-290367 - Make sure HIP checks for GPU signal
Check GPU signal status for event before falling into CPU command
status validation

Change-Id: I66f15752d7dca550c0fa1a2252ec5a63817391c3
2021-06-11 16:40:00 -04:00
Rahul Garg 19c84bc604 ROCMOPS-1956 - Push restructured code to hipamd
hipamd will have AMD's ROCCLR based HIP backend implementation

Change-Id: Id7de9634519b4ce46fca71a1b61f3d5b1e3fc459
2021-06-07 21:42:44 +00:00
Tao Sang 1cba7ec965 Remove hip-hcc codes: Part one
Remove hip-hcc codes from hip code base
Simplify hip CMakeLists.txt to exclude hip-hcc
Simplify cmake cmd for hip-rocclr building
Some minor fixes

Change-Id: I1ae357ecfd638d6c25bca293c1724b026be21ecd
2020-12-09 15:49:47 -05:00
Jeff Daily e943144b31 add IPC event support (#1996) 2020-04-17 10:31:22 +05:30
Jeff Daily 1444f850ac fix hipStreamAddCallback, block future work on stream (#1934) 2020-03-19 16:16:04 +05:30
Evgeny Mankov 4aaa2336a8 [HIP] Clean-up deprecated HIP error codes
hipErrorMemoryAllocation -> hipErrorOutOfMemory
hipErrorInitializationError -> hipErrorNotInitialized
hipErrorMapBufferObjectFailed -> hipErrorMapFailed
hipErrorInvalidResourceHandle -> hipErrorInvalidHandle
2019-12-23 17:01:35 +03:00