Gráfico de commits

181 Commits

Autor SHA1 Mensaje Fecha
Jaydeep Patel 12e0bdcd32 SWDEV-453535 - Capture hipMemset3DAsync.
Change-Id: I517c2557573db258b3e3e353f02f6a56652b0fde
2024-04-18 00:05:45 -04:00
Anusha GodavarthySurya ea4f09e8c0 SWDEV-452787 - correct hipDrvGraphAddMemcpyNode check
Change-Id: Id58f982edd4f17d675f7a0f61a9b4dea0baebd9b
2024-03-29 00:56:12 -04:00
Anusha GodavarthySurya 19b4660cbb 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
2024-03-28 22:10:31 -04:00
Jaydeep Patel 0be92b8f09 SWDEV-452299 - Pass dst pitch while capturing hipMemcpyParam2DAsync & elementSize should be 1 as width is in bytes while capturing hipMemset2DAsync.
Change-Id: I8f9122a30cba0a07c097dfd7609432090caab142
2024-03-21 12:49:34 -04:00
Anusha GodavarthySurya 4feb1f9337 SWDEV-448586 - Added implementation for new API hipStreamBeginCaptureToGraph
Change-Id: I1ce802102cef2b66c92d3375f769983841de793f
2024-03-07 05:24:49 +00:00
Rahul Manocha 2c0fa829b4 [SWDEV-448077][SWDEV-448067] - Changes to Kernel Node Attribute related APIs
Change-Id: Ibbf773fd5f134a62b7ce04f6956b10c1086b1782
2024-02-28 18:14:41 -05:00
Anusha GodavarthySurya 4b4ec7fc52 SWDEV-445981 - Handle hipGraphExecUpdate to update graph kernel node params with graph performance optimizations
Change-Id: I3b05c6bfc83404152bcae9b31cfdf56af7cc61a4
2024-02-27 15:20:23 -05:00
Anusha GodavarthySurya 7d09e1abed SWDEV-444767 - Fix graph tests for context change between Inst & launch with DEBUG_CLR_GRAPH_PACKET_CAPTURE
When graph is Instantiate on device 0 graph and launch on device1 switch to command creation and enqueue during launch.

Change-Id: Ied34dc99b2a776130d1354ed3830c6ccab9068e4
2024-02-14 17:02:36 +00:00
Anusha GodavarthySurya d6bc40e822 SWDEV-445084 - Add DEBUG_CLR_GRAPH_PACKET_CAPTURE support for hipGraphInstantiateWithFlags/Params
Change-Id: I5096b4c8d73d1faf972dfd23ab86a53d888946c4
2024-02-08 04:55:53 -05:00
Rahul Manocha f964975db0 SWDEV-421025 - Graph Instantiate with Params API Update
Change-Id: I3ed821ced02420858d360e8dab5e1e931c350c7e
2024-02-07 11:35:21 -05:00
Anusha GodavarthySurya a1b2cbe44e SWDEV-439637 - Updated to compile with clang compiler
Change-Id: Ib0a8e1cc007f083fb1d1f4363cf89ba76ad3c4f2
2024-02-06 23:57:13 -05:00
Rahul Manocha 1a3901fa49 SWDEV-421025 - hipGraphInstantiateWithParams API changes
Change-Id: Ib07d4dd1698220b68ed27f91d58d3bd315a8804c
2024-02-05 05:08:11 +00:00
Anusha GodavarthySurya e9957151f3 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
2024-02-05 05:08:11 +00:00
Anusha GodavarthySurya 0a055f874b SWDEV-422207 - Added debug env to dump graph during Instantiation
Change-Id: Ibde2ae5b8d240f3986bcd168facc513a319c0f17
2024-02-05 05:08:11 +00:00
Rahul Manocha f40c380cdb SWDEV-421025 - Graph Kernel Node priority Attribute Set/Get
Change-Id: I5c422728aa694c8dabb5cf9bade441101512a249
2024-01-17 12:44:35 -05:00
sdashmiz d23835ffbe SWDEV-421027 - Add hipGraphAddNode
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ic8cf293ff483ee2547b52d2975062bcb9a6f5d17
2024-01-12 11:36:30 -05:00
sdashmiz 087767d9ac SWDEV-403382 - Add missing graph APIs
- add external semaphor signal and wait node

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: If205d48bc4fb60ce2966ca6ed0419e7700755bdd
2024-01-09 14:19:50 -05:00
Anusha GodavarthySurya 2bb2446d8f SWDEV-422207 - Fix graph catch tests with graph optimizations(DEBUG_CLR_GRAPH_PACKET_CAPTURE enabled)
Change-Id: I16297e0ddde286bf1798c90f2bf846e69819010d
2023-12-14 01:27:08 -05:00
sdashmiz b8e820f835 SWDEV-421021 - Add hipDrvmemsetnode for graph
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I0240a162a16e61549d46b5d086c831404550e833
2023-12-13 09:30:36 -05:00
Anusha GodavarthySurya 5e21f0c6bd SWDEV-351966 - Dispatch table for hip runtime
Change-Id: Ie4a44fa8cf1ff9c152146070bbbf6b0636d4e325
2023-11-22 01:11:19 -05:00
sdashmiz 9b567e1799 SWDEV-417075 - add hipDrvAddMemCpyNode
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ie631d7b1788f10171a29d463759a3cba3b2b2007

SWDEV-417075 - add hipDrvGraphAddMemcpyNode

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I6bab3310919643e119cd0004276907e223641cfb
2023-10-31 09:55:42 -04:00
sdashmiz c089ef4a2b 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
2023-10-12 12:09:19 -04:00
Anusha GodavarthySurya e63c280d4d SWDEV-422207 - Capture AQL Packets for graph Kernel nodes during graph Inst. And enqueue AQL packet during launch
Change-Id: I1e5f7f9e2a70bd500d190193cb6ba0867f5a63e7
2023-10-05 00:34:29 -04:00
Satyanvesh Dittakavi f16d336e32 SWDEV-375607 - Fix hipGraphExecUpdate behavior
Addresses the below scenarios like parameters mismatch
in memcopy node, difference in the count of nodes, difference
in the dependencies of the nodes.

Change-Id: I31c6516fb27cc1007809f1b50306fdb0c2356ccc
2023-09-21 11:17:49 -04:00
Ioannis Assiouras 315082e554 SWDEV-419996 - Allow both kernelParams and extra arguments to be set to null
When kernel function expects no parameters no error should be returned
if both kernelParams and extra arguments are set to null.

Change-Id: I5941bcc400b6fb380e623bdae0233ae3e4f73815
2023-09-07 12:57:46 -04:00
Ioannis Assiouras 2bc6661737 SWDEV-420222 - Removed implementation of hipMemcpyArray functions
hipMemcpyArrayToArray, hipMemcpyFromArrayAsync, and hipMemcpyToArrayAsync
are deprecated in cuda and are missing the headers in hip_runtime_api.h.
Removed their implementation from hip_memory.cpp.

Change-Id: I9720aec6241515c56c66b7e90a37b2ed53347eb2
2023-09-04 13:35:08 +01:00
Jaydeep Patel d2655d84fd SWDEV-375596 - Device context should not be changed while graph exec update for graph nodes other than empty and host node.
Change-Id: I89d734b111aae5b042386175d2786ce9002771b9
2023-08-27 22:58:32 -04:00
Saleel Kudchadker e1e5d071ba SWDEV-301667 - Port optimization to save extra packet to graphs
Change-Id: Ibaf64a4efe070c42620e6e153c1862a4a0b15664
2023-08-23 16:58:21 -04:00
Anusha GodavarthySurya f76a40c26d SWDEV-415772, SWDEV-414682 - Fix childgraph node execution
Change-Id: If9ffc08d98a57b8daa5f131f72ef1bf2317f29e1
2023-08-18 00:45:00 -04:00
Anusha GodavarthySurya fd97dde1e6 SWDEV-407568 - Move graph implementation to hip namespace
Change-Id: I7023f202a7e3eb25b17db6d3e361205594ae81a5
2023-07-26 06:52:45 +00:00
Jatin Chaudhary b67d055eb6 SWDEV-412457 - remove unused header, add correct header for cpp
Change-Id: I2192daec7c033e94097c26db6177e14558a8728d
2023-07-21 11:30:59 -04:00
sdashmiz 1e9dfdfe99 SWDEV-360031 - Event record clean up
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ic7b5edd501c5f61b2bce87252ac040cbc4083006
2023-05-29 11:42:16 -04:00
sdashmiz 8578da8a3d SWDEV-367877 - Detect cycle in graph
- detect cycle when graph is instantiated

- remove level calculation from add/remove node

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

graph-cycle-corrections

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I8a3cec9a5a503aac6ea1e85ff3dd2b972790fb1d
2023-05-18 09:44:39 -04:00
German 04b696abee SWDEV-353281 - VM support in mempool for graphs
The change enables VM support in graphs on Windows. That allows
to avoid caching of all allocations at the cost of map/unmap
overhead during memory create/destroy.

Change-Id: I792be00fba099e5e5d3cd44a963e1dfd6976a86d
2023-05-05 15:31:26 -04:00
Jaydeep Patel b6aa27d4a3 SWDEV-389647 - SWDEV-388950 - Check device id same while set params.
GraphMemcpyNodeSetParamsFrom/ToSymbol APIs neew to check device id for
original src/dst is same as what is passed in while set.

Change-Id: If0b610808223dce9115562bb5e9b31c8eaa2df22
2023-04-25 13:24:26 -04:00
Jaydeep Patel 3c5888922e SWDEV-389648 - Find node and then erase.
Change-Id: Iecf78fe6b0645e58b4de6658b59ad1285946b698
2023-04-19 01:05:58 -04:00
Jaydeep Patel ec227d560a SWDEV-388926 - Original and new memory should be from same device for hipGraphExecMemsetNodeSetParams.
Change-Id: I32bd56db0b80d748e3ae0737a38ea975738bdab7
2023-04-05 10:54:10 +00:00
sdashmiz 8c62a616a2 SWDEV-388937 - fix removing a node
- before removing node from graph all edges should be removed and rest
  of graph updated

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ide0afcc964f87f13cf407c971e22497433e3b1ed
2023-04-05 10:54:01 +00:00
sdashmiz f6c36be185 SWDEV-386685 - return proper error
- if graph is already instantiated there cant be a second instance in
  case nodes are free or alloc

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I51e2ca8ade24799da96ed126a26c5ea3bad6f452
2023-04-05 10:53:51 +00:00
sdashmiz 3a45a965e2 SWDEV-386695 - fix param sanitization check
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I1317640453d56718fa41f455c512282fd0f01e2a
2023-04-05 10:53:42 +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
Sourabh Betigeri ec8ab9b29c SWDEV-385089 - Fixes hipGraphLaunch functionality accounting for the existence of MemFree node or already freed memory when the same graph is launched multiple times
Change-Id: I49beb49ad4e6db4a2dd5b8c8cc8ed11ff0e4e132
2023-03-09 21:10:13 -05:00
Ioannis Assiouras 58e05898d1 SWDEV-386926 - Added check for correct node type in hipGraphMem[Alloc/Free]NodeGetParams
Change-Id: Ic8446210a683d1329391288d0ed99d835c5aa140
2023-03-09 20:05:28 -05:00
Ioannis Assiouras 9e1e3035ec SWDEV-387383 - Changed error message in hipDevice[Get/Set]GraphMemAttribute to match cuda
Change-Id: I34a9f3d8572e004ae3d25ef25a4d404bea6d9597
2023-03-09 11:53:15 -05:00
Jatin Chaudhary 7715b3b398 SWDEV-386435 - Add checks for memfree graph node
Change-Id: I8eab93046723f0fdc01f95e3bfb9071d84eb2e18
2023-03-03 04:33:49 -05:00
sdashmiz a69db9b426 SWDEV-382838 - inetrmittent failure
- test fails intermittently because object is not cleared correctly

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I88daf3dc08bb83d6d3f047ff48a63c8f856fb0bf
2023-02-27 16:23:04 -05:00
German Andryeyev 314bdba632 SWDEV-353281 - Add support for MemPool in graphs
Implement hipDeviceGetGraphMemAttribute, hipDeviceSetGraphMemAttribute
and hipDeviceGraphMemTrim

Change-Id: I4f8fc1250ce1e8b7636d43d59ba7343158e45088
2023-02-23 12:49:53 -05:00
Jaydeep Patel f9e27bcdd4 SWDEV-377804 - Initial commit to support hipGraphInstantiateFlagAutoFreeOnLaunch
Change-Id: I7a35becb6c98a6ff70264e141317d98be7457a37
2023-02-01 11:51:39 -05:00
sdashmiz 34d087da93 SWDEV-361623 - correct remove edge behaviour
- remove node dependency before checking parents
- reduce edge level acording to new value of node

Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Id4bff1684f7e0b42beeebc4d2e009bfdb507fb5f
2023-01-31 12:48:59 -05:00