Commit Graph

157 Commits

Author SHA1 Message Date
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
Ioannis Assiouras 0066c6cb6b 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


[ROCm/clr commit: 2bc6661737]
2023-09-04 13:35:08 +01:00
Jaydeep Patel 6258f8254f SWDEV-375596 - Device context should not be changed while graph exec update for graph nodes other than empty and host node.
Change-Id: I89d734b111aae5b042386175d2786ce9002771b9


[ROCm/clr commit: d2655d84fd]
2023-08-27 22:58:32 -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
Jatin Chaudhary dfc4d60ec4 SWDEV-412457 - remove unused header, add correct header for cpp
Change-Id: I2192daec7c033e94097c26db6177e14558a8728d


[ROCm/clr commit: b67d055eb6]
2023-07-21 11:30:59 -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
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 e404ad7bd8 SWDEV-389648 - Find node and then erase.
Change-Id: Iecf78fe6b0645e58b4de6658b59ad1285946b698


[ROCm/clr commit: 3c5888922e]
2023-04-19 01:05:58 -04: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 a2e1a1b4aa 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


[ROCm/clr commit: 8c62a616a2]
2023-04-05 10:54:01 +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 b0b21ae1cc SWDEV-386695 - fix param sanitization check
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I1317640453d56718fa41f455c512282fd0f01e2a


[ROCm/clr commit: 3a45a965e2]
2023-04-05 10:53:42 +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
Ioannis Assiouras bf7e31c1ff SWDEV-388278 - Fix return HIP_RETURN(x)
Change-Id: I940ee3660a2427eade8690a9318966fb04a1fbe8


[ROCm/clr commit: e6520ddf8a]
2023-03-13 13:32:55 +00: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
Ioannis Assiouras 41174e6244 SWDEV-387383 - Changed error message in hipDevice[Get/Set]GraphMemAttribute to match cuda
Change-Id: I34a9f3d8572e004ae3d25ef25a4d404bea6d9597


[ROCm/clr commit: 9e1e3035ec]
2023-03-09 11:53:15 -05:00
Jatin Chaudhary 759415288b SWDEV-386435 - Add checks for memfree graph node
Change-Id: I8eab93046723f0fdc01f95e3bfb9071d84eb2e18


[ROCm/clr commit: 7715b3b398]
2023-03-03 04:33:49 -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
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
sdashmiz aaf82fb91b SWDEV-374368 - dependency list should not have duplicate
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I67e1c8203f10916b98408e2004e6c64e96b1933b


[ROCm/clr commit: b251c8fdb2]
2023-01-30 10:28:35 -05:00
sdashmiz 483f22536f SWDEV-374389 - correct update dependency behaviour
- nodes should belong to graph
- num of passed dependency cant be larger than graph nodes

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


[ROCm/clr commit: 23edcd3e23]
2023-01-30 10:05:52 -05:00
pghafari de904d8716 SWDEV-374381 - updated error check
for hipGraphAddMemcpyNodeFrom/ToSymbol

Change-Id: I4de063a5a9307148bf4da0e8a2edc1d3b01a8b9a


[ROCm/clr commit: d491ee7385]
2023-01-18 19:59:32 -05: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
pghafari 7261e8fa39 SWDEV-374380 - hipGraphAddMemcpyNode1D errorCheck
Change-Id: I50501de139e3898783c1cc9c91c5ed3ed2564f3b


[ROCm/clr commit: 236a725d67]
2023-01-17 07:49:23 -05:00
sdashmiz 42a08627ef 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


[ROCm/clr commit: be966acb0c]
2023-01-16 13:09:24 -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
Rakesh Roy 9045dbab4b SWDEV-374369 - Fix hipGraphAdd*Node* APIs invalid behavior
- Return hipErrorInvalidValue if dependencies array contains a node from
  different graph

Change-Id: I0dcfaaaeb50a89848ac546a0b86b185977e2128c


[ROCm/clr commit: a427d3cd10]
2023-01-13 12:09:42 -05:00
Jaydeep Patel d12bfbbb4d SWDEV-374383 - Check from and to if no of dependencies are more than 0, Check from and to node are belongs to graph pass in.
Change-Id: I0cdafb497147f9ac7f84d40203a21e9eefd595a3


[ROCm/clr commit: bb486b04c6]
2023-01-11 11:43:22 -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
Jiabao Xie 078f931d73 SWDEV-374375 - Added checks to see if hip graph nodes are valid
Change-Id: I9e6eabf0e4a9100de6f9d26bf5b815957f12d4f2


[ROCm/clr commit: e5490697cc]
2023-01-06 16:58:56 -05:00
Jaydeep Patel f9574cd645 SWDEV-374372 - Return invalid value if pitch is less than width in bytes.
Change-Id: I33806d747cd344250d02e217de8e9b6d5a7f83c1


[ROCm/clr commit: 7c32f66e67]
2023-01-05 10:40:14 -05:00
sdashmiz 09a1db7005 SWDEV-370309 - GetNodes should do levelorder
- GetNode should retrun nodes based on the dependency between them

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


[ROCm/clr commit: ce60d47b61]
2023-01-03 04:54:55 -05:00
Jaydeep Patel 5bc671c8c6 SWDEV-374382 - Change hip error type to context is destroyed instead for invalid stream.
Change-Id: I5ed22463204d7bff3741599eeced3d030da78fc4


[ROCm/clr commit: 845bf0adb4]
2022-12-21 12:54:39 +00:00
sdashmiz 6a661a9f15 SWDEV-367833 - return success for null stream
- return success for query on null stream

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


[ROCm/clr commit: fefff25364]
2022-12-08 11:41:37 -05: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 38b4f50f9c SWDEV-371206, SWDEV-371163 - Fix hipGraphNodeGetEnabled/SetEnabled negative scenarios
Change-Id: Icf4bcca743c2188ee89dbdc8eb32d9d727b95227


[ROCm/clr commit: ac0db17b54]
2022-12-01 12:28:29 -05:00
sdashmiz 7c73bbece6 SWDEV-366974 - return implicit capture for null stream
- return implicit error if null sream is passed while blocing stream is
  in operation

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


[ROCm/clr commit: f93dfb2a4e]
2022-11-30 13:45:26 -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 5780c7066f SWDEV-325711 - Added graph API hipGraphUpload
Change-Id: I7e4c8c997a5ef940000d599ded9d317d62b8826b


[ROCm/clr commit: 596b16da5a]
2022-11-30 04:40:17 +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
Anusha Godavarthy Surya a13afd3aca SWDEV-366653 - Added Implemention of DOT file generation for graph
Change-Id: I5ab6a58e49451b5e04f2e93bf594b985ac58cc8d


[ROCm/clr commit: 08c4619fab]
2022-11-24 11:02:21 -05:00
sdashmiz bafdaa4f31 SWDEV-365587 - reuse the id from capturing stream
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I65f5be3fcc4cffcf3eb5762fd0b43fd051c145c2


[ROCm/clr commit: b665b9a6e8]
2022-11-24 10:35:14 -05:00