Commit Graph

93 Commits

Author SHA1 Message Date
sdashmiz 9b297f0006 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


[ROCm/clr commit: 9b567e1799]
2023-10-31 09:55:42 -04:00
Anusha GodavarthySurya d0b8c99103 SWDEV-422207 - Handle nonkernel nodes for graph opt
- Support graph with different types of nodes with single
branch when DEBUG_CLR_GRAPH_PACKET_CAPTURE flag is enabled

Change-Id: I149a8629769cd0d5849ffefb04f1352668a685b6


[ROCm/clr commit: 38d2c56784]
2023-10-24 18:36:06 +00:00
Saleel Kudchadker cba9970220 SWDEV-408180 - Address possible cornercases
- Address corner cases that can arise with the new
hipMemcpyDeviceToDeviceNoCU enum
- Better log

Change-Id: I6035b901f8d616741054b7a5ff4f67956329ac57


[ROCm/clr commit: 5662d4037c]
2023-10-23 16:54:08 -04:00
Anusha GodavarthySurya 0404df28ef SWDEV-422207 - Capture AQL Packets for graph Kernel nodes during graph Inst. And enqueue AQL packet during launch
Change-Id: I1e5f7f9e2a70bd500d190193cb6ba0867f5a63e7


[ROCm/clr commit: e63c280d4d]
2023-10-05 00:34:29 -04:00
Satyanvesh Dittakavi be8dbcf736 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


[ROCm/clr commit: f16d336e32]
2023-09-21 11:17:49 -04:00
Ioannis Assiouras a0ee7e2784 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


[ROCm/clr commit: 315082e554]
2023-09-07 12:57:46 -04:00
Saleel Kudchadker d7a63b9d66 SWDEV-301667 - Port optimization to save extra packet to graphs
Change-Id: Ibaf64a4efe070c42620e6e153c1862a4a0b15664


[ROCm/clr commit: e1e5d071ba]
2023-08-23 16:58:21 -04:00
Anusha GodavarthySurya b25939b4de SWDEV-415772, SWDEV-414682 - Fix childgraph node execution
Change-Id: If9ffc08d98a57b8daa5f131f72ef1bf2317f29e1


[ROCm/clr commit: f76a40c26d]
2023-08-18 00:45:00 -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
Anusha GodavarthySurya 57467ef2c7 SWDEV-392732 - Initial commit for graph doorbell optimization(AQL Buffering)
Change-Id: I451725006c54c249dc530c55d2af2a31594bf49b


[ROCm/clr commit: b0e6f99ad7]
2023-07-16 07:56:00 -04:00
Jaydeep Patel 621b266d71 SWDEV-401781 - Auto Clean removes from map so check before remove while submit mem alloc node command.
Change-Id: Id004f75b307c2c769dee556c3d18e781830bcae1


[ROCm/clr commit: a8164d3e12]
2023-06-29 02:29:01 -04:00
sdashmiz 2e960fae8f SWDEV-403063 - Clean up hip graph
- Replace dynamic allocation with embedded struct in hip graph

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


[ROCm/clr commit: cc85289739]
2023-06-15 12:17:09 -04:00
sdashmiz a88c64f86d 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


[ROCm/clr commit: 8578da8a3d]
2023-05-18 09:44:39 -04:00
German 8d97827417 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


[ROCm/clr commit: 04b696abee]
2023-05-05 15:31:26 -04:00
Jaydeep Patel 6b364523bd 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


[ROCm/clr commit: b6aa27d4a3]
2023-04-25 13:24:26 -04:00
Jaydeep Patel 2536d245f6 SWDEV-388943,SWDEV-388954 - Corrected validations for memcpy kind.
Change-Id: I8338111ac46e4eba279d53969d12df3a23552049


[ROCm/clr commit: 2576153acd]
2023-04-19 01:00:50 -04:00
Jaydeep Patel e257db8ba7 SWDEV-388958 - SWDEV-388929 - Kind can be hipMemcpyDefault for H2D and D2D and srcMemory can be allocated using hipHostMalloc for H2D.
Change-Id: I187ff850ebb890b357ee03500105b71468508ea2


[ROCm/clr commit: 7215451db9]
2023-04-19 01:00:28 -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
Ajay b997937c50 SWDEV-384184 - hipGraphKernelNodeSetAttribute negative scenarios
Hardcoding check for accessPolicyMaxWindowSize
since its returned from Hardware thats not available yet

Change-Id: I3a09fc9ace3027c7d5533bbbc7da5e18f43591ec


[ROCm/clr commit: c603d5004a]
2023-04-05 16:37:04 +00:00
Jaydeep Patel 37d76bc6a6 SWDEV-388942 - hipGraphMemsetNodeSetParams & hipGraphExecMemsetNodeSetParams differs in validation as per cuda.
Change-Id: Ie013aa5e94e8c468d949797890fb6b629e97a323


[ROCm/clr commit: 17553de9b7]
2023-04-05 10:54:22 +00:00
Jaydeep Patel 90a00bc681 SWDEV-388926 - Original and new memory should be from same device for hipGraphExecMemsetNodeSetParams.
Change-Id: I32bd56db0b80d748e3ae0737a38ea975738bdab7


[ROCm/clr commit: ec227d560a]
2023-04-05 10:54:10 +00:00
sdashmiz ddf76371e6 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


[ROCm/clr commit: f6c36be185]
2023-04-05 10:53:51 +00:00
sdashmiz 7528052a8f SWDEV-377862 - kind does not show on dotprint
- for to/from symbols nodes the correct kind is not showing

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


[ROCm/clr commit: ae631aaa32]
2023-03-10 16:39:07 -05:00
Sourabh Betigeri 0e37a53fae 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


[ROCm/clr commit: ec8ab9b29c]
2023-03-09 21:10:13 -05:00
Ioannis Assiouras fc2406316f SWDEV-386926 - Added check for correct node type in hipGraphMem[Alloc/Free]NodeGetParams
Change-Id: Ic8446210a683d1329391288d0ed99d835c5aa140


[ROCm/clr commit: 58e05898d1]
2023-03-09 20:05:28 -05:00
Saleel Kudchadker 71a3807e6f SWDEV-345213 - Use the right accessor
- Use correct accessor to fetch memory objects. This checks the svm map
and arena maps

Change-Id: I84515330bb530cfe2b39abf30e1e659938f06806


[ROCm/clr commit: 8028d327e9]
2023-03-06 19:35:40 -05:00
sdashmiz bab487caa8 SWDEV-382838 - inetrmittent failure
- test fails intermittently because object is not cleared correctly

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


[ROCm/clr commit: a69db9b426]
2023-02-27 16:23:04 -05: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
sdashmiz 8c69e2e52e SWDEV-377862 - wrong format for memcpy1d
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: Ide6d252083b1812b0ad9cd182b1435e3e59b3aa1


[ROCm/clr commit: e34be4fbee]
2023-02-14 09:47:04 -05:00
Sourabh Betigeri 3bc1a92b66 SWDEV-375194 - Fixes graph dot file descriptions to include labelId matching CUDA
Change-Id: Ia0e6b77e38678b13457f86755ed8f3b852c9b7a1


[ROCm/clr commit: 191b468d89]
2023-02-13 19:43:12 -05:00
Sourabh Betigeri 1544843291 SWDEV-375202 - Fixes print formatting for flags in hipGraphDebugPrint() to match CUDA
Change-Id: I2d85fc38d2c65bc12534109883fe00802e77e62d


[ROCm/clr commit: 4cbf9a4a16]
2023-02-09 13:07:57 -05:00
German Andryeyev 395d85ac2e SWDEV-353281 - Switch Graph to operate with stream
MemPool was designed to use hip::Stream, but graph implementation uses
amd::HostQueue. Hence switch graph to hip::Stream management.

Change-Id: Ia319389de45e4c3c6043d17473279a6f27a13140


[ROCm/clr commit: 0fe03b6494]
2023-02-06 10:11:55 -05:00
Jaydeep Patel c6da0aa014 SWDEV-377804 - Initial commit to support hipGraphInstantiateFlagAutoFreeOnLaunch
Change-Id: I7a35becb6c98a6ff70264e141317d98be7457a37


[ROCm/clr commit: f9e27bcdd4]
2023-02-01 11:51:39 -05:00
sdashmiz a081bdd157 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


[ROCm/clr commit: 34d087da93]
2023-01-31 12:48:59 -05:00
Jaydeep Patel 43565f0496 SWDEV-379125 - Check only if there is attr set for graph kernel node.
Change-Id: I8768b33ad27e75eb753d99d682edf60b31b240df


[ROCm/clr commit: 70bfc6145b]
2023-01-24 09:51:12 +00:00
Anusha GodavarthySurya f681854310 SWDEV-376407 - Track manual nodes added during capture
Change-Id: Ic44f842c303eed0eff08b6ee5922976d96a52c71


[ROCm/clr commit: d422ad0ec1]
2023-01-18 03:27:41 -05:00
sdashmiz 11f97823cd SWDEV-374374 - memset memory mapping should not change
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I4cc3b1ac5a59fe5c9ae060f4d5d189dc63ca450c


[ROCm/clr commit: 52bf09aac6]
2023-01-17 14:41:24 -05:00
Jaydeep Patel ffcff763d2 SWDEV-375366 - SWDEV-375351 - Handle HtoH case for graph mem cpy impl.
Change-Id: I5a8c3c3c22db045f714b0443b8d70a8c6b4a8cea


[ROCm/clr commit: fdecc1b351]
2023-01-16 11:37:57 -05:00
German Andryeyev 9c811dc241 SWDEV-353281 - Initial support of memalloc in graph
Add memory allocation support in graph. Current implementation uses
cache from mempool  to hold the allocations which belong to the graph.
Also the resource tracking is disabled at this moment because mempool
operates with hip::Stream objects, but graph has execution with
amd::HostQueue objects.

Change-Id: I54fe3250126d24f5a26ada975f37d429bb4ef17b


[ROCm/clr commit: eef47ca24a]
2023-01-13 13:06:59 -05:00
Jiabao Xie 3ab54974dc SWDEV-374375 - moving nullptr check into hipGraphNode::isValidNode
Change-Id: Ic9264521d6f0b36ffc948ca9feeaa70eb6e98eb6


[ROCm/clr commit: 03200953e5]
2023-01-09 16:27:38 -05:00
Jaydeep Patel 2d25a60c1a SWDEV-374370 - Propogate element size to blit kernel.
Change-Id: I8a3355c62947265be34e6a2befd26f86b3dc6cd2


[ROCm/clr commit: f2b0542442]
2023-01-01 23:54:09 -05:00
Anusha GodavarthySurya 09b894eeef SWDEV-325711 - Node can be enabled/disabled only for kernel, memcpy and memset nodes
Change-Id: Id9c19a14655732d61fccee9c3d1ffa0614123468


[ROCm/clr commit: 0fcc5557bd]
2022-12-13 05:08:38 +00:00
Anusha GodavarthySurya e1b559e386 SWDEV-372521 - Fix copy of unused kernel attributes
Change-Id: Ib93f27d68cedac2182ba6dac0c234cc71c2c4229


[ROCm/clr commit: 5bcfb07c85]
2022-12-13 03:44:10 +00:00
pghafari ed6108c2d6 SWDEV-368166 - hipGraphAddMemcpyNode1D paramcheck
adding parameter check for hipGraphAddMemcpyNode1D

Change-Id: I94dc944bd55ea04b8e9288a27c8f58dd3720161b


[ROCm/clr commit: 5acc2cdcc2]
2022-12-07 18:29:11 -05:00
Anusha GodavarthySurya e7fa085afe SWDEV-325711 - Correct formatting
Change-Id: Ie26159e0bb3315cf7c3de1eb682f23ef343df0f2


[ROCm/clr commit: 16b31b0c54]
2022-11-30 05:15:01 +00:00
Anusha GodavarthySurya f97723d118 SWDEV-325711 - Added implementation for graph API hipGraphKernelNodeCopyAttributes
Change-Id: I576d0e81c69097fe881556f6d022bb7c7ca3287b


[ROCm/clr commit: 3a9621574c]
2022-11-29 02:53:14 +00:00
Anusha GodavarthySurya 58201c1b92 SWDEV-325711 - Added implementation for graph APIs GetEnabled & SetEnabled
Change-Id: I15a165b3dc548d00b7f5458e1b322b192b8c0d76


[ROCm/clr commit: 1ab46fe7ae]
2022-11-28 21:50:36 -05:00
Tao Sang 9d1ce7a68f SWDEV-368280 - Fix crash in graph stream capture
Fix crash in graph stream capture for hipExtModuleLaunchKernel.

Change-Id: Ieaaed1d15b4d268193d8341d4b1609f83a9e4789


[ROCm/clr commit: 530ec02aae]
2022-11-28 09:33:39 -05:00
Anusha Godavarthy Surya b1fe9498c5 SWDEV-240806 - Fix command release with new commands for every launch
Change-Id: Iecbf11a8f9e9b50f39858f2000a2d5266f0ef364


[ROCm/clr commit: 85296e280a]
2022-11-25 09:30:45 +00:00