From 0645ad457622cf8670a36a994f93ed43f5ba3ed0 Mon Sep 17 00:00:00 2001 From: Anusha GodavarthySurya Date: Wed, 23 Nov 2022 08:39:24 +0000 Subject: [PATCH] SWDEV-366653 - Added new graph APIs - Fix windows build Change-Id: I580133bddcbab5529aecfb70bc9776e8c40de697 [ROCm/clr commit: 78eef7f17312d58dc5e35625a72a79c5b94e1220] --- .../include/hip/amd_detail/hip_prof_str.h | 13 +++++++++ projects/clr/hipamd/src/hip_graph.cpp | 27 +++++++++++++++++++ 2 files changed, 40 insertions(+) diff --git a/projects/clr/hipamd/include/hip/amd_detail/hip_prof_str.h b/projects/clr/hipamd/include/hip/amd_detail/hip_prof_str.h index 7a8bd24275..efd31dffa1 100644 --- a/projects/clr/hipamd/include/hip/amd_detail/hip_prof_str.h +++ b/projects/clr/hipamd/include/hip/amd_detail/hip_prof_str.h @@ -3785,6 +3785,9 @@ typedef struct hip_api_data_s { }; // hipGraphDebugDotPrint[('hipGraph_t', 'graph'), ('const char*', 'path'), ('unsigned int', 'flags')] #define INIT_hipGraphDebugDotPrint_CB_ARGS_DATA(cb_data) { \ + cb_data.args.hipGraphDebugDotPrint.graph = (hipGraph_t)graph; \ + cb_data.args.hipGraphDebugDotPrint.path = (path) ? strdup(path) : NULL; \ + cb_data.args.hipGraphDebugDotPrint.flags = (unsigned int)flags; \ }; // hipGraphDestroy[('hipGraph_t', 'graph')] #define INIT_hipGraphDestroy_CB_ARGS_DATA(cb_data) { \ @@ -3941,6 +3944,8 @@ typedef struct hip_api_data_s { }; // hipGraphKernelNodeCopyAttributes[('hipGraphNode_t', 'hSrc'), ('hipGraphNode_t', 'hDst')] #define INIT_hipGraphKernelNodeCopyAttributes_CB_ARGS_DATA(cb_data) { \ + cb_data.args.hipGraphKernelNodeCopyAttributes.hSrc = (hipGraphNode_t)hSrc; \ + cb_data.args.hipGraphKernelNodeCopyAttributes.hDst = (hipGraphNode_t)hDst; \ }; // hipGraphKernelNodeGetAttribute[('hipGraphNode_t', 'hNode'), ('hipKernelNodeAttrID', 'attr'), ('hipKernelNodeAttrValue*', 'value')] #define INIT_hipGraphKernelNodeGetAttribute_CB_ARGS_DATA(cb_data) { \ @@ -4035,6 +4040,9 @@ typedef struct hip_api_data_s { }; // hipGraphNodeGetEnabled[('hipGraphExec_t', 'hGraphExec'), ('hipGraphNode_t', 'hNode'), ('unsigned int*', 'isEnabled')] #define INIT_hipGraphNodeGetEnabled_CB_ARGS_DATA(cb_data) { \ + cb_data.args.hipGraphNodeGetEnabled.hGraphExec = (hipGraphExec_t)hGraphExec; \ + cb_data.args.hipGraphNodeGetEnabled.hNode = (hipGraphNode_t)hNode; \ + cb_data.args.hipGraphNodeGetEnabled.isEnabled = (unsigned int*)isEnabled; \ }; // hipGraphNodeGetType[('hipGraphNode_t', 'node'), ('hipGraphNodeType*', 'pType')] #define INIT_hipGraphNodeGetType_CB_ARGS_DATA(cb_data) { \ @@ -4043,6 +4051,9 @@ typedef struct hip_api_data_s { }; // hipGraphNodeSetEnabled[('hipGraphExec_t', 'hGraphExec'), ('hipGraphNode_t', 'hNode'), ('unsigned int', 'isEnabled')] #define INIT_hipGraphNodeSetEnabled_CB_ARGS_DATA(cb_data) { \ + cb_data.args.hipGraphNodeSetEnabled.hGraphExec = (hipGraphExec_t)hGraphExec; \ + cb_data.args.hipGraphNodeSetEnabled.hNode = (hipGraphNode_t)hNode; \ + cb_data.args.hipGraphNodeSetEnabled.isEnabled = (unsigned int)isEnabled; \ }; // hipGraphReleaseUserObject[('hipGraph_t', 'graph'), ('hipUserObject_t', 'object'), ('unsigned int', 'count')] #define INIT_hipGraphReleaseUserObject_CB_ARGS_DATA(cb_data) { \ @@ -4066,6 +4077,8 @@ typedef struct hip_api_data_s { }; // hipGraphUpload[('hipGraphExec_t', 'graphExec'), ('hipStream_t', 'stream')] #define INIT_hipGraphUpload_CB_ARGS_DATA(cb_data) { \ + cb_data.args.hipGraphUpload.graphExec = (hipGraphExec_t)graphExec; \ + cb_data.args.hipGraphUpload.stream = (hipStream_t)stream; \ }; // hipGraphicsGLRegisterBuffer[('hipGraphicsResource**', 'resource'), ('GLuint', 'buffer'), ('unsigned int', 'flags')] #define INIT_hipGraphicsGLRegisterBuffer_CB_ARGS_DATA(cb_data) { \ diff --git a/projects/clr/hipamd/src/hip_graph.cpp b/projects/clr/hipamd/src/hip_graph.cpp index caa9183c0c..7d99ee3350 100644 --- a/projects/clr/hipamd/src/hip_graph.cpp +++ b/projects/clr/hipamd/src/hip_graph.cpp @@ -2136,3 +2136,30 @@ hipError_t hipGraphReleaseUserObject(hipGraph_t graph, hipUserObject_t object, u hipError_t status = hipUserObjectRelease(object, count); HIP_RETURN(status); } + +hipError_t hipGraphKernelNodeCopyAttributes(hipGraphNode_t hSrc, hipGraphNode_t hDst) { + HIP_INIT_API(hipGraphKernelNodeCopyAttributes, hSrc, hDst); + HIP_RETURN(hipErrorNotSupported); +} + +hipError_t hipGraphDebugDotPrint(hipGraph_t graph, const char* path, unsigned int flags) { + HIP_INIT_API(hipGraphDebugDotPrint, graph, path, flags); + HIP_RETURN(hipErrorNotSupported); +} + +hipError_t hipGraphNodeSetEnabled(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, + unsigned int isEnabled) { + HIP_INIT_API(hipGraphNodeSetEnabled, hGraphExec, hNode, isEnabled); + HIP_RETURN(hipErrorNotSupported); +} + +hipError_t hipGraphNodeGetEnabled(hipGraphExec_t hGraphExec, hipGraphNode_t hNode, + unsigned int* isEnabled) { + HIP_INIT_API(hipGraphNodeGetEnabled, hGraphExec, hNode, isEnabled); + HIP_RETURN(hipErrorNotSupported); +} + +hipError_t hipGraphUpload(hipGraphExec_t graphExec, hipStream_t stream) { + HIP_INIT_API(hipGraphUpload, graphExec, stream); + HIP_RETURN(hipErrorNotSupported); +}