Graf Tiomantas

99 Tiomáintí

Údar SHA1 Teachtaireacht Dáta
Anusha GodavarthySurya 08c92f4793 SWDEV-480209 - Make internal callbacks non-blocking
Change-Id: Ic918d08f341abfd9a7c167d09f9c723cdc43157f


[ROCm/clr commit: 683a942364]
2025-01-10 02:16:11 -05:00
Marko Arandjelovic 12dc02b4f8 SWDEV-495609 - Change include path for rocclr/utils
- Header files inside rocclr/utils when included from hipamd or opencl should be included as #include "rocclr/utils/xxx.h" instead of "utils/xxx.h"

Change-Id: Ic0760c33b9d091f5620dec67e5482c9698d22093


[ROCm/clr commit: 78f62d3230]
2024-12-05 11:44:20 -05:00
German Andryeyev 6933aa7c29 SWDEV-501403 - Switch to std::shared_mutex for streamSetLock
Shared mutex allows to have access to the list of streams  from
multiple threads at the same time.

Change-Id: Ibee64b846cde03321d5b17dbee2829c0bab7e7d6


[ROCm/clr commit: efd3ea4b30]
2024-12-04 12:06:51 -05:00
Saleel Kudchadker 957b460014 SWDEV-494149 - Improve hipGet/Set Device
Change-Id: If8975687a3ba9caadafc48a0066f19a4ebaab9e2


[ROCm/clr commit: 6611cc015d]
2024-12-03 13:36:38 -05:00
Satyanvesh Dittakavi 5a16db0cd5 SWDEV-477584 - Match hipGetLastError behavior with CUDA using env var
Change-Id: I4c5acff180ae904028f7c5fdf4e109ffd1f0c4ef


[ROCm/clr commit: e3b8754448]
2024-11-28 01:33:52 -05:00
Anusha GodavarthySurya bfc89974e0 SWDEV-472840 SWDEV-461980 - Fix null stream sync performance
=> If null stream is not created during sync skip nullstrm creation
=> Do cpu wait on blocking & null stream if it exists

Change-Id: I90d6ced6a2dd1782ba58f3fed4e3608fc0efa55a


[ROCm/clr commit: 17e7b7c2ef]
2024-11-27 10:29:15 -05:00
Saleel Kudchadker 672e4fa835 SWDEV-446123 - Revert "Match hipGetLastError behavior with CUDA using env var"
This reverts commit 941cfd5b36.

Reason for revert: <INSERT REASONING HERE>

Change-Id: I11a456655393bcf4b82d749ce7259bc1b78d1424


[ROCm/clr commit: 582dc7dd6d]
2024-11-08 20:35:13 -05:00
Satyanvesh Dittakavi 941cfd5b36 SWDEV-446123 - Match hipGetLastError behavior with CUDA using env var
Change-Id: Iaec697c1304d746376ecf2bfe2ad683b15ee189f


[ROCm/clr commit: 5f477900a3]
2024-11-07 12:02:34 -05:00
Anusha GodavarthySurya 1a472b9703 SWDEV-480209 - Handle GraphExec object release
=> GraphExec instance is destroyed before async launch completes,
destroy after all pending graph launches
=> Remove GraphExec destroy during next sync point(hipStreamSync,
hipDeviceSync etc..)

Change-Id: I4df682aae5787fd6e5240a7be936ce50361345d0


[ROCm/clr commit: f9f995c6d0]
2024-10-22 12:30:46 -04:00
Vladana Stojiljkovic af3e9cb9e2 SWDEV-489823 - Fix hipStreamEndCapture leak when capture is invalidated
Change-Id: If8f5163d70e04d34a75fd0a7ba6c0a15ea59bb8b


[ROCm/clr commit: 6f2bad3998]
2024-10-10 04:38:06 -04:00
Anusha GodavarthySurya c0ceb1cf12 SWDEV-477324 - Capture Memcpy1D pinned H2D D2H
Change-Id: I1f4744f20a9caeed005ec68da44e5fde737e09f7


[ROCm/clr commit: 742b0210d3]
2024-09-30 01:01:30 -04:00
kjayapra-amd f19260d568 SWDEV-480772 - Remove name variable from amd::Monitor class.
Change-Id: Ie2a4fa44f485786227230f8a892e090e718aa30e


[ROCm/clr commit: 12a39fbf22]
2024-09-19 11:55:01 -04:00
Sourabh Betigeri d1d6c448c9 SWDEV-462192 SWDEV-459056 - Fixes corruption
SPT is destroyed with hipDeviceReset(). If a
stream is created right after reset, the same
object id could be reused. Later SPT destructor
incorrectly verifies that the stream is valid
referring to the reused object id causing the
corruption.

Change-Id: I3b1f7ffdf8bab874dca7b8fde22318162997b8f6


[ROCm/clr commit: f6a68b3c2e]
2024-08-21 11:33:44 -04:00
Jaydeep Patel 12eea11370 SWDEV-457316 - Release graph exec before stream gets deleted.
Releasing graph exec after wait completes and before delete hip::stream obj
during stream destroy.

Change-Id: I1d68aa8d844f7d3af330c6d09c44af07f8553551


[ROCm/clr commit: 8e80429b87]
2024-08-06 00:39:37 -04:00
Julia Jiang 6fa0563ed6 SWDEV-436608 - Un-deprecate hipHostAlloc()
Change-Id: I71393e6f536ba84b4e172acf54ba4f72350e2ae8


[ROCm/clr commit: e988e5e448]
2024-08-01 11:45:20 -04:00
sdashmiz 0678768fd3 SWDEV-429053 - Add more check for hipStreamLegacy
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Iaf802372b160b09e5e8451074af1731e4f1d410a


[ROCm/clr commit: 7257f56c60]
2024-07-08 13:55:54 -04:00
Ioannis Assiouras af089a2171 SWDEV-463865 - namespace changes to prevent symbol conflicts in static builds
Change-Id: I09ceb5962b7aa19156909f47167c87d6887c9cd1


[ROCm/clr commit: 3edf1501cc]
2024-06-12 16:22:27 -04:00
sdashmiz 2889266aeb SWDEV-429053 - Add check for StreamLegacy
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I402185a3b81935aaa1c8c4963407b8de21c72d8a


[ROCm/clr commit: 627ccfa502]
2024-05-28 06:31:10 +00:00
Anusha GodavarthySurya 085703c225 SWDEV-460770 - Handle Graph Exec release
Handle GraphExec instance is destroyed before async launch completes
GraphExec instance is destroyed after async launch completes
GraphExec instance is destroyed without a launch

Change-Id: I45a7c82295fea916c7559bd8f796df710513aea1


[ROCm/clr commit: bf4d10ff61]
2024-05-28 06:28:17 +00:00
German Andryeyev 7f195e2996 SWDEV-444670 - Enable teardown class
Force implicit runtime teardown with a global destructor.

Change-Id: Iabe63dedf5b94fefc98668585c45a61607120669


[ROCm/clr commit: c95a75a2bf]
2024-04-16 12:00:06 -04:00
Anusha GodavarthySurya ae296c8fad SWDEV-443567 - SWDEV-436126 - Fix Prohibited and Unhandled Operations during capture
=> hipDeviceSynchronize is not allowed during capture.
=> hipEventSynchronize during capture should return hipErrorCapturedEvent error
=> hipEventQuery during capture should return hipErrorCapturedEvent error
hipStreamSynchronize, hipEventSynchronize, hipStreamWaitEvent, hipStreamQuery
For Side Stream(Stream that is not currently under capture):
=> If current thread is capturing in relaxed mode, calls are allowed
=> If any stream in current/concurrent thread is capturing in global mode, calls are not allowed
=> If any stream in current thread is capturing in ThreadLocal mode, calls are not allowed
For Stream that is currently under capture
=> calls are not allowed
=> Any call that is not allowed during capture invalidates the capture sequence
=> It is invalid to call synchronous APIs during capture. Synchronous APIs,
such as hipMemcpy(), enqueue work to the legacy stream and synchronize it before returning.

Change-Id: I201c6e63e1a5d93fd416a3b520264c0fdbe31237


[ROCm/clr commit: 19b4660cbb]
2024-03-28 22:10:31 -04:00
Ioannis Assiouras 8b875d0248 SWDEV-430437,SWDEV-434702 - Split the streamset per device
Change-Id: If1bcca45825c9899462bb95ed6f637f5af806cc8


[ROCm/clr commit: be2bdabb76]
2024-03-18 19:08:52 -04:00
German Andryeyev 4bb028a49d SWDEV-311271 - Add dependency tracking for streams
Mempool has capability to track dependency between streams for
faster memory reuse. Enable that capability.

Change-Id: I28266a7e38d0fc4c5d027b9542d3719653840821


[ROCm/clr commit: 17d0c166d2]
2024-03-05 12:53:09 -05:00
German Andryeyev e26e82d58e SWDEV-311271 - Update mempool errors
Add extra validations for negative tests.

Change-Id: I7b2879b8840b5d1b6c5cb0d919a651cd868b7529


[ROCm/clr commit: d808ae6782]
2024-02-28 17:13:49 -05:00
German Andryeyev c9bace9b71 SWDEV-311271 - Fix Windows mempool management
Windows path still uses multi threading implementation. Hence, in graphs
all nodes are executed in a queue thread and that requires to manage
mempool in the queue thread. However, the spec allows to destory memory,
allocated in a graph, outside of the graph's execution. That may cause
mempool management to go out of sync.

Change-Id: I0ffb2244b3cb720455ed44d1b3e2487fa8959a77


[ROCm/clr commit: 4f6b0da028]
2024-02-13 17:16:06 -05:00
Anusha GodavarthySurya 3dc533e1e1 SWDEV-439628 - hipGraphExecKernelNodeSetParams to update graph kernel node params with graph performance optimizations.
During hipGraphExecKernelNodeSetParams kernel function can also be updated.
Hence size required for kernel parameters differs from what is allocated during graphInstantiation.
So, create new 128KB kernel pool and allocate kernel args from the pool.
If the pool is full create new 128KB pool. Release kernel pools when graph exec object is destroyed.

Change-Id: I9567946d63400c79cbfd4c5439c654c92557ceae


[ROCm/clr commit: e9957151f3]
2024-02-05 05:08:11 +00:00
German Andryeyev 3a4261966c SWDEV-311271 - Release freed memory from MemPools
Runtime has to release extra memory, held by the pools,
in synchronization points for event, stream or device.

Change-Id: Id533a5e1d137812aa72bdfe101b4b333c6a43d66


[ROCm/clr commit: 3fa4e31180]
2023-12-19 13:47:04 -05:00
Ioannis Assiouras ab411c8f34 SWDEV-434702 - get the nullstream in constant time in iHipWaitActiveStreams
Change-Id: Ib92cc4d2ca1b725cf30b24cdd711c873fd513d95


[ROCm/clr commit: 8bdda90071]
2023-12-03 19:05:18 -05:00
Anusha GodavarthySurya 3bdedf0cc7 SWDEV-351966 - Dispatch table for hip runtime
Change-Id: Ie4a44fa8cf1ff9c152146070bbbf6b0636d4e325


[ROCm/clr commit: 5e21f0c6bd]
2023-11-22 01:11:19 -05:00
sdashmiz fcfa0d0733 SWDEV-332969 - [ABI Break]Substitute hipArray* with hipArray_t
- hipArray will be an internal struct from rocm6.0

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


[ROCm/clr commit: c089ef4a2b]
2023-10-12 12:09:19 -04:00
Anusha GodavarthySurya 661b3381da SWDEV-408701 - Avoid adding duplicates when no node is captured in cross stream
Change-Id: Iccbddaf9db73238aa938f8b3e8ec410f4a86d524


[ROCm/clr commit: c7e4e9c2f4]
2023-10-09 13:15:47 -04:00
German Andryeyev 2d492a201b SWDEV-423317 - Enable GPU wait for hip sync calls
hipStreamSynchronize and hipDeviceSynchronize won't longer wait
for CPU commands in DD mode

Change-Id: I079c8bbfc34ddc6d3e2d74c92a34665877e512a5


[ROCm/clr commit: fbea58ba11]
2023-09-22 13:04:27 -04:00
Sourabh Betigeri 5d160eb7ee SWDEV-326798 - [ABI Break] Fixes null stream sync behavior
Change-Id: I84ad21f61779145c198dc68bf0fe02a57d34bf64


[ROCm/clr commit: 3f88fe850b]
2023-09-21 11:57:58 -04:00
Anusha GodavarthySurya d8022cd081 SWDEV-407568 - Move graph implementation to hip namespace
Change-Id: I7023f202a7e3eb25b17db6d3e361205594ae81a5


[ROCm/clr commit: fd97dde1e6]
2023-07-26 06:52:45 +00:00
sdashmiz 4dd4970313 SWDEV-408586 - set device active when malloc is called
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ib930d997b7d544d8b6fb42d2fea01fa8a4418e98


[ROCm/clr commit: 173de06658]
2023-07-13 11:39:58 -04:00
Anusha GodavarthySurya 729779a3b3 SWDEV-399098 - Change hip_init lock to use std::call_once
Updating hip_init lock to use std::call_once fixed Performance
drops in TF benchmarks for FP16

Change-Id: Ib1125ac66806b232057ba183e296ea4d0642d08d


[ROCm/clr commit: 2f83719d12]
2023-06-01 02:04:29 -04:00
sdashmiz 9a3d3aef8c SWDEV-360031 - Event record clean up
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ic7b5edd501c5f61b2bce87252ac040cbc4083006


[ROCm/clr commit: 1e9dfdfe99]
2023-05-29 11:42:16 -04:00
Ioannis Assiouras 7adb0089c6 SWDEV-397356: Move HIP_API_PRINT after HIP_INIT so that the begin function call gets printed
Change-Id: I99b655596741c19bc483647794ae8b4f6e6f2843


[ROCm/clr commit: d88f0358b0]
2023-05-04 18:46:21 -04:00
German ca2d9bfbff SWDEV-353281 - Don't add the same stream into the list
Change-Id: I7f41de68b669dc759bdb11657dd897ad57e368fc


[ROCm/clr commit: 31697779bb]
2023-04-25 10:21:55 -04:00
Jaydeep Patel 06bc6d9980 SWDEV-391178 - Extern monitor to avoid copy in multithreading.
Defining monitor in header cause copy and hence it's moved to cpp.

Change-Id: Ib07bbde2808d9cb2af9349076f777e8a5b28d210


[ROCm/clr commit: e8eb1772f2]
2023-04-19 00:58:49 -04:00
German 56dedad98b 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


[ROCm/clr commit: 1e88d2c52f]
2023-04-05 16:37:49 +00:00
Christophe Paquot e1b8ba3750 SWDEV-301667 - Optimize lock for graph global capture mode
Remove unneeded lock and add smaller scope

Change-Id: I03a437057d54ce2d72c07a080bb872693b7f3f6c


[ROCm/clr commit: 6e86d29a58]
2023-04-05 10:58:14 +00:00
Sourabh Betigeri 21d9eb467d 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


[ROCm/clr commit: 7809d2846b]
2023-04-05 10:53:33 +00:00
Jaydeep Patel 37769589f3 SWDEV-383056 - Don't sync with dst device for hipMemcpyAsync.
Change-Id: I28530e6bd870d617507592576295fc9e7eed1475


[ROCm/clr commit: 57fa5938fe]
2023-02-28 23:21:01 -05:00
Sourabh Betigeri 02a3fcff26 SWDEV-326798 - Revert "SWDEV-326798 - Changes in stream sync behavior"
This reverts commit 1932e88970.

Reason for revert: HIP tests on windows fails

Change-Id: I795ed19d76a41e2fd9971414cefa5bd3be45d4bc


[ROCm/clr commit: 08c8972d97]
2023-02-28 02:28:12 -05:00
Sourabh Betigeri 1932e88970 SWDEV-326798 - Changes in stream sync behavior
Change-Id: If6d0b3876a9bf197c7e49273eaa5ca5bfae46d0b


[ROCm/clr commit: 51adec2730]
2023-02-27 16:48:14 -05:00
Ioannis Assiouras ea7d5037b9 SWDEV-381402 - Remove unused getNullStream() from device. Make stream destructor private.
Change-Id: Idde30a8bfe97a525bd9f9fb50698a5cb14b798fc


[ROCm/clr commit: 06927fd3c1]
2023-02-24 10:42:46 +00:00
German Andryeyev 2e0fd95d74 SWDEV-353281 - Add support for MemPool in graphs
Implement hipDeviceGetGraphMemAttribute, hipDeviceSetGraphMemAttribute
and hipDeviceGraphMemTrim

Change-Id: I4f8fc1250ce1e8b7636d43d59ba7343158e45088


[ROCm/clr commit: 314bdba632]
2023-02-23 12:49:53 -05:00
Ioannis Assiouras 2633e62801 SWDEV-381402 - Derive hip::Stream from amd::HostQueue
Change-Id: I6c1aca5eb350c32d974ae4ffcc725705355956d8


[ROCm/clr commit: e3633dc8f4]
2023-02-21 18:12:03 -05:00
Ioannis Assiouras 5007a5f15d SWDEV-381402 - convert host_device to host_context of type amd::Context*
Change-Id: Ic1cb9a3fa64e16699fad7e9ec6679f1d34b14bef


[ROCm/clr commit: 8b87ccb8cc]
2023-02-16 17:49:12 -05:00