Commit Graph

57 Commits

Author SHA1 Message Date
Anusha GodavarthySurya d6c3c17c8b SWDEV-422207 - Remove L2 flush when kernelArgs are in device memory
Change-Id: I7b5625cb6d55e83689bff7bbb45be9c517ec4a8d


[ROCm/clr commit: 5fb7536586]
2023-10-26 19:14:58 +00: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
taosang2 28524520e6 SWDEV-364236 - Fix layered Image issue
Fix wrong logic to get layer index;
Make layered image's layout match cuda spec;
Fix wrong comparision of element size.
Remove amd::BufferRect from ihipMemcpyAtoHCommand()
and ihipMemcpyHtoACommand().
Change-Id: Icc6a4233fbce2e9b2dc6feb79e6bfbd761684c7d


[ROCm/clr commit: 5a0085e516]
2023-10-19 16:06:20 -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
Anusha GodavarthySurya f464a6ade6 SWDEV-301667 - Optimize performance when graph has single branch
Three for loops iterate over all graph nodes for UpdateStream, FillCommands and
EnqueueCommands has performance drop for large graphs.

Change-Id: I077accf3a4680d5d944b73200fd6498a7a48f25c


[ROCm/clr commit: 530dc6de2a]
2023-09-07 23:35:36 -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 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
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
Ioannis Assiouras 517e142aeb SWDEV-388661 - Fixed regression in hipMemCpyParam3D when offset is applied
Change-Id: I31273d643aac05f394f505235734c7f098497051


[ROCm/clr commit: 9c04e21b68]
2023-04-05 10:54:34 +00:00
sdashmiz c33e0bde58 SWDEV-385255 - fixes for graph exec with mem pools
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I6f127090904a6c7985992bfaaab928d8b03013f5


[ROCm/clr commit: d2ea4d3dd4]
2023-04-05 10:52:04 +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
Saleel Kudchadker ce8215feb4 SWDEV-384658 - Optimize D2D memcpy
- Intra device memcpy does not need to perform host side synchronization
- Check alloc flags when determining memory type

Change-Id: Ieff28bd8d62756ffe82905354c4a91e9717e6bd4


[ROCm/clr commit: dfefc97178]
2023-03-09 04:47:11 -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
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
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 fb107094d6 SWDEV-374378 - correct setparam for memcpy node
- params should be valid when used for default flag since we support
  unified virtual address space

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


[ROCm/clr commit: 5c5b220561]
2023-02-09 09:39:20 -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
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
Anusha GodavarthySurya e7fa085afe SWDEV-325711 - Correct formatting
Change-Id: Ie26159e0bb3315cf7c3de1eb682f23ef343df0f2


[ROCm/clr commit: 16b31b0c54]
2022-11-30 05:15:01 +00: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
agunashe 8b2c273837 SWDEV-337331 - Windows graph fix
Unit_hipGraphNodeGetDependentNodes_Functional
Unit_hipGraphNodeGetDependencies_Functional
Unit_hipGraphAddEventRecordNode_Functional_WithoutFlags
Unit_hipGraphMemcpyNodeSetParams_Functional
Unit_hipGraphExecChildGraphNodeSetParams_ChildTopology

Change-Id: I762776d33f27197bcc012951a1828d3d1d2b3e2e


[ROCm/clr commit: 47ae1f1fff]
2022-10-28 14:46:04 -04:00
Anusha GodavarthySurya a0981e4ccd SWDEV-357759, SWDEV-360041, SWDEV-361145 Fix Stream end capture on forked streams
Change-Id: If0dc6242d2d3ca680e37e14a5dea5cf68dc295df


[ROCm/clr commit: 039e26ee0f]
2022-10-12 13:00:05 -04:00
Tao Sang 69a1326d3f SWDEV-318349 - Remove sync for null stream
Remove sync for null stream in  hipGraphExec::Run()

Change-Id: Ieaaed1c15b4d258193d8341d4b17d9f03a9e4783


[ROCm/clr commit: 56e7c8b3a0]
2022-10-12 09:46:18 -04:00
Ajay ca2235f671 SWDEV-353548 - assert with different behavior for Release vs Debug
assert statement behavior
-Debug: crashes tests with SIGABORT
-Release: continues silently without

Change-Id: I7578eb16a7391ff7f9d68f1cae3bcea7f8225579


[ROCm/clr commit: be80bf5406]
2022-10-11 14:00:28 -04:00
Tao Sang 2be45a82ec SWDEV-318349 - Fix hipGraphKernelNode and hipGraphMemcpyNode
For hipGraphKernelNode, remove func_;
and reorganize functions to naturely support mGPU;
For hipGraphMemcpyNode, make EnqueueCommands() support different
queues' sync
Change-Id: I22708923f454adf4456ff99d25559daffed8c20d


[ROCm/clr commit: f83ba8cd23]
2022-10-07 09:07:56 -04:00
Laurent Morichetti 7919db9760 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


[ROCm/clr commit: 82bce811ee]
2022-09-21 02:41:39 -04:00
pghafari 2363e4dd78 SWDEV-356582 - set the parent node in Graph Clone
Change-Id: I9b685ca9827b0a0dddc3ef6a0394b298d1031f04


[ROCm/clr commit: f1d8a02122]
2022-09-20 16:42:29 -04:00
sdashmiz 72703ab50f SWDEV-352290 - remove the static list for user obj
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I8d7542ad5aacdda4e817c6aaed78c9cac4562efd


[ROCm/clr commit: ce5103ac97]
2022-08-24 12:01:41 -04:00
Jason Tang f69195d51c SWDEV-333471 - Remove HIP_FORCE_QUEUE_PROFILING
HIP_FORCE_QUEUE_PROFILING has been replaced by GPU_FORCE_QUEUE_PROFILING.

Change-Id: Ic8dec4407ef79c27094cb3954e48869075b4732f


[ROCm/clr commit: 97741fe5d4]
2022-08-24 11:53:16 -04:00
sdashmiz 213aad7615 SWDEV-325711: Add userobject functions for graph
- add user obj APIs for creating release and retain of user onbjects

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


[ROCm/clr commit: 2c010dec17]
2022-08-17 14:31:43 -04:00
sdashmiz 024e1510b1 SWDEV-321698 - add new enum entries to match cuda
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: If0a17b3234fd90b1f553a075e02280258000d36a


[ROCm/clr commit: 39dbf65782]
2022-07-13 10:22:06 -04:00
Ajay 930215afb7 SWDEV-337331 - Windows: DD=0 graph child Node fixes
Change-Id: Icd7fc3967a202946d3428eba99a1bbf43b9772db


[ROCm/clr commit: 8d1bd607f9]
2022-06-28 11:57:11 -04:00
Sourabh Betigeri 5d26e66ed7 SWDEV-318237 SWDEV-330173 - Fixes kernel parameter corruption when multiple nodes of the same kernelNode exist
Change-Id: I6437593be46b7b5afc3d77cdd887ad4139978ad3


[ROCm/clr commit: 5549c8cd1b]
2022-06-14 18:06:21 -04:00
sdashmiz 92f5d16599 SWDEV-321698 - remove Memcpy1D type
- Memcpy1D node type is not complying with cuda

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


[ROCm/clr commit: 13c875eaf0]
2022-06-13 08:31:02 -04:00
Ajay 65d3357dbc SWDEV-337331 - graph feature on Windows
Fixes for hipGraphInstantiate OutofMemory issue and
soft hang of hipStreamSynchronize.
Change-Id: Ic2bb97582c5978ef2e4eb3a1b124483aa412838e


[ROCm/clr commit: c06bfa6bef]
2022-06-09 12:04:51 -04:00
Shadi Dashmiz fc67e37d9a Revert "SWDEV-321698 - hipGraphNodeTypeMemcpy1D NVDIA build failure"
This reverts commit 42be9301d1.

Reason for revert: hip changes not in yet

Change-Id: I89e35d171cf01fb82d361279998efcc90e54ef33


[ROCm/clr commit: 1965dd5795]
2022-03-08 15:08:31 -05:00
Sourabh Betigeri fabd92b996 SWDEV-313503 - Returns appropriate error code when destroyed exec graphs are launched
Change-Id: I3ca025494fd27f9ed0cd4534c740f7e19e1c66b3


[ROCm/clr commit: 0ae70a4c8d]
2022-03-08 11:54:04 -05:00
sdashmiz 42be9301d1 SWDEV-321698 - hipGraphNodeTypeMemcpy1D NVDIA build failure
Signed-off-by: sdashmiz <shadi.dashmiz@amd.com>
Change-Id: I7aea11bf14adbeb7fea68eb862df74fcf6f13d75


[ROCm/clr commit: 74beb4583c]
2022-03-07 16:26:11 -05:00
Ajay 89e67da3a1 SWDEV-313680 - hipGraphAddKernelNode invalid cases
Change-Id: I4c87c5dd80cd3f78f5c38b2d3447b03b91ffa656


[ROCm/clr commit: ef71f0ded1]
2022-03-03 20:43:02 -05:00
Ajay b4f68b52d3 SWDEV-315443 - hipGraph and Node issues
Change-Id: I9fefd1a12d83bfa89d6704ee236c1409618ab02a


[ROCm/clr commit: 944c18c754]
2022-03-02 00:40:05 +00:00
Payam f169ab9c07 SWDEV-315880 - Graph, added checks for memory kind
Change-Id: I9cd2b1ee58be60bebb41af6007b0ab25d2c98607


[ROCm/clr commit: 11f5126d46]
2022-02-25 17:47:05 -05:00
Sourabh Betigeri 9b118a81d3 SWDEV-317253 - int underflow causes an assertion with no node in graph. This fixes it.
Change-Id: I9bc293866d69c803381762256ce31f3d80d2afda


[ROCm/clr commit: 76f65a0a3d]
2022-01-26 18:25:03 -05:00
anusha GodavarthySurya abb6f92138 SWDEV-240806 - hipGraph performance create new graph commands for every launch
Change-Id: I7360b48055f67a91c23169ca532a19124d40e98b


[ROCm/clr commit: ec6b8d82b5]
2021-11-17 00:13:52 -08:00
anusha GodavarthySurya 26e317f519 SWDEV-24806 - Fix windows dk build
Change-Id: Ie309da9dbbf5037510ec7e6913a711ea631d3df8


[ROCm/clr commit: 3a5c80386d]
2021-10-06 22:52:44 -07:00