Skip to content

Commit

Permalink
Merge pull request #1527 from emankov/HIPIFY
Browse files Browse the repository at this point in the history
[HIPIFY][HIP][6.2.0] `HIP Runtime` support - Step 5 - final
  • Loading branch information
emankov authored Jun 7, 2024
2 parents d969999 + d67044e commit 415033c
Show file tree
Hide file tree
Showing 7 changed files with 142 additions and 76 deletions.
43 changes: 28 additions & 15 deletions bin/hipify-perl
Original file line number Diff line number Diff line change
Expand Up @@ -1424,15 +1424,20 @@ my %experimental_funcs = (
"cudaLaunchAttributeCooperative" => "6.2.0",
"cudaLaunchAttributeAccessPolicyWindow" => "6.2.0",
"cudaKernelNodeAttributePriority" => "6.2.0",
"cudaGraphNodeSetParams" => "6.2.0",
"cudaGraphKernelNodePortProgrammatic" => "6.2.0",
"cudaGraphKernelNodePortLaunchCompletion" => "6.2.0",
"cudaGraphKernelNodePortDefault" => "6.2.0",
"cudaGraphInstantiateWithParams" => "6.2.0",
"cudaGraphExecNodeSetParams" => "6.2.0",
"cudaGraphExecGetFlags" => "6.2.0",
"cudaGraphEdgeData_st" => "6.2.0",
"cudaGraphEdgeData" => "6.2.0",
"cudaGraphDependencyType_enum" => "6.2.0",
"cudaGraphDependencyTypeProgrammatic" => "6.2.0",
"cudaGraphDependencyTypeDefault" => "6.2.0",
"cudaGraphDependencyType" => "6.2.0",
"cudaGraphAddNode" => "6.2.0",
"cudaGetFuncBySymbol" => "6.2.0",
"cudaGetDriverEntryPoint" => "6.2.0",
"cudaDriverEntryPointVersionNotSufficent" => "6.2.0",
Expand All @@ -1448,6 +1453,15 @@ my %experimental_funcs = (
"cublasCgbmv_v2_64" => "6.2.0",
"cublasCgbmv_64" => "6.2.0",
"cuStreamBeginCaptureToGraph" => "6.2.0",
"cuGraphNodeSetParams" => "6.2.0",
"cuGraphMemcpyNodeSetParams" => "6.2.0",
"cuGraphMemcpyNodeGetParams" => "6.2.0",
"cuGraphInstantiateWithParams" => "6.2.0",
"cuGraphExecNodeSetParams" => "6.2.0",
"cuGraphExecMemcpyNodeSetParams" => "6.2.0",
"cuGraphExecGetFlags" => "6.2.0",
"cuGraphAddNode" => "6.2.0",
"cuGraphAddMemFreeNode" => "6.2.0",
"cuGetProcAddress" => "6.2.0",
"CUlaunchAttributeValue_union" => "6.2.0",
"CUlaunchAttributeValue" => "6.2.0",
Expand Down Expand Up @@ -1621,6 +1635,20 @@ sub subst {
sub experimentalSubstitutions {
subst("cuStreamBeginCaptureToGraph", "hipStreamBeginCaptureToGraph", "stream");
subst("cudaStreamBeginCaptureToGraph", "hipStreamBeginCaptureToGraph", "stream");
subst("cuGraphAddMemFreeNode", "hipDrvGraphAddMemFreeNode", "graph");
subst("cuGraphAddNode", "hipGraphAddNode", "graph");
subst("cuGraphExecGetFlags", "hipGraphExecGetFlags", "graph");
subst("cuGraphExecMemcpyNodeSetParams", "hipDrvGraphExecMemcpyNodeSetParams", "graph");
subst("cuGraphExecNodeSetParams", "hipGraphExecNodeSetParams", "graph");
subst("cuGraphInstantiateWithParams", "hipGraphInstantiateWithParams", "graph");
subst("cuGraphMemcpyNodeGetParams", "hipDrvGraphMemcpyNodeGetParams", "graph");
subst("cuGraphMemcpyNodeSetParams", "hipDrvGraphMemcpyNodeSetParams", "graph");
subst("cuGraphNodeSetParams", "hipGraphNodeSetParams", "graph");
subst("cudaGraphAddNode", "hipGraphAddNode", "graph");
subst("cudaGraphExecGetFlags", "hipGraphExecGetFlags", "graph");
subst("cudaGraphExecNodeSetParams", "hipGraphExecNodeSetParams", "graph");
subst("cudaGraphInstantiateWithParams", "hipGraphInstantiateWithParams", "graph");
subst("cudaGraphNodeSetParams", "hipGraphNodeSetParams", "graph");
subst("cuGetProcAddress", "hipGetProcAddress", "driver_entry_point");
subst("cudaGetDriverEntryPoint", "hipGetProcAddress", "driver_entry_point");
subst("cudaGetFuncBySymbol", "hipGetFuncBySymbol", "driver_interact");
Expand Down Expand Up @@ -3472,10 +3500,8 @@ sub simpleSubstitutions {
subst("cuGraphAddHostNode", "hipGraphAddHostNode", "graph");
subst("cuGraphAddKernelNode", "hipGraphAddKernelNode", "graph");
subst("cuGraphAddMemAllocNode", "hipGraphAddMemAllocNode", "graph");
subst("cuGraphAddMemFreeNode", "hipDrvGraphAddMemFreeNode", "graph");
subst("cuGraphAddMemcpyNode", "hipDrvGraphAddMemcpyNode", "graph");
subst("cuGraphAddMemsetNode", "hipDrvGraphAddMemsetNode", "graph");
subst("cuGraphAddNode", "hipGraphAddNode", "graph");
subst("cuGraphBatchMemOpNodeGetParams", "hipGraphBatchMemOpNodeGetParams", "graph");
subst("cuGraphBatchMemOpNodeSetParams", "hipGraphBatchMemOpNodeSetParams", "graph");
subst("cuGraphChildGraphNodeGetGraph", "hipGraphChildGraphNodeGetGraph", "graph");
Expand All @@ -3495,12 +3521,8 @@ sub simpleSubstitutions {
subst("cuGraphExecEventWaitNodeSetEvent", "hipGraphExecEventWaitNodeSetEvent", "graph");
subst("cuGraphExecExternalSemaphoresSignalNodeSetParams", "hipGraphExecExternalSemaphoresSignalNodeSetParams", "graph");
subst("cuGraphExecExternalSemaphoresWaitNodeSetParams", "hipGraphExecExternalSemaphoresWaitNodeSetParams", "graph");
subst("cuGraphExecGetFlags", "hipGraphExecGetFlags", "graph");
subst("cuGraphExecHostNodeSetParams", "hipGraphExecHostNodeSetParams", "graph");
subst("cuGraphExecKernelNodeSetParams", "hipGraphExecKernelNodeSetParams", "graph");
subst("cuGraphExecMemcpyNodeSetParams", "hipDrvGraphExecMemcpyNodeSetParams", "graph");
subst("cuGraphExecMemsetNodeSetParams", "hipDrvGraphExecMemsetNodeSetParams", "graph");
subst("cuGraphExecNodeSetParams", "hipGraphExecNodeSetParams", "graph");
subst("cuGraphExecUpdate", "hipGraphExecUpdate", "graph");
subst("cuGraphExternalSemaphoresSignalNodeGetParams", "hipGraphExternalSemaphoresSignalNodeGetParams", "graph");
subst("cuGraphExternalSemaphoresSignalNodeSetParams", "hipGraphExternalSemaphoresSignalNodeSetParams", "graph");
Expand All @@ -3513,7 +3535,6 @@ sub simpleSubstitutions {
subst("cuGraphHostNodeSetParams", "hipGraphHostNodeSetParams", "graph");
subst("cuGraphInstantiate", "hipGraphInstantiate", "graph");
subst("cuGraphInstantiateWithFlags", "hipGraphInstantiateWithFlags", "graph");
subst("cuGraphInstantiateWithParams", "hipGraphInstantiateWithParams", "graph");
subst("cuGraphInstantiate_v2", "hipGraphInstantiate", "graph");
subst("cuGraphKernelNodeCopyAttributes", "hipGraphKernelNodeCopyAttributes", "graph");
subst("cuGraphKernelNodeGetAttribute", "hipGraphKernelNodeGetAttribute", "graph");
Expand All @@ -3523,8 +3544,6 @@ sub simpleSubstitutions {
subst("cuGraphLaunch", "hipGraphLaunch", "graph");
subst("cuGraphMemAllocNodeGetParams", "hipGraphMemAllocNodeGetParams", "graph");
subst("cuGraphMemFreeNodeGetParams", "hipGraphMemFreeNodeGetParams", "graph");
subst("cuGraphMemcpyNodeGetParams", "hipDrvGraphMemcpyNodeGetParams", "graph");
subst("cuGraphMemcpyNodeSetParams", "hipDrvGraphMemcpyNodeSetParams", "graph");
subst("cuGraphMemsetNodeGetParams", "hipGraphMemsetNodeGetParams", "graph");
subst("cuGraphMemsetNodeSetParams", "hipGraphMemsetNodeSetParams", "graph");
subst("cuGraphNodeFindInClone", "hipGraphNodeFindInClone", "graph");
Expand All @@ -3533,7 +3552,6 @@ sub simpleSubstitutions {
subst("cuGraphNodeGetEnabled", "hipGraphNodeGetEnabled", "graph");
subst("cuGraphNodeGetType", "hipGraphNodeGetType", "graph");
subst("cuGraphNodeSetEnabled", "hipGraphNodeSetEnabled", "graph");
subst("cuGraphNodeSetParams", "hipGraphNodeSetParams", "graph");
subst("cuGraphReleaseUserObject", "hipGraphReleaseUserObject", "graph");
subst("cuGraphRemoveDependencies", "hipGraphRemoveDependencies", "graph");
subst("cuGraphRetainUserObject", "hipGraphRetainUserObject", "graph");
Expand All @@ -3560,7 +3578,6 @@ sub simpleSubstitutions {
subst("cudaGraphAddMemcpyNodeFromSymbol", "hipGraphAddMemcpyNodeFromSymbol", "graph");
subst("cudaGraphAddMemcpyNodeToSymbol", "hipGraphAddMemcpyNodeToSymbol", "graph");
subst("cudaGraphAddMemsetNode", "hipGraphAddMemsetNode", "graph");
subst("cudaGraphAddNode", "hipGraphAddNode", "graph");
subst("cudaGraphChildGraphNodeGetGraph", "hipGraphChildGraphNodeGetGraph", "graph");
subst("cudaGraphClone", "hipGraphClone", "graph");
subst("cudaGraphCreate", "hipGraphCreate", "graph");
Expand All @@ -3577,15 +3594,13 @@ sub simpleSubstitutions {
subst("cudaGraphExecEventWaitNodeSetEvent", "hipGraphExecEventWaitNodeSetEvent", "graph");
subst("cudaGraphExecExternalSemaphoresSignalNodeSetParams", "hipGraphExecExternalSemaphoresSignalNodeSetParams", "graph");
subst("cudaGraphExecExternalSemaphoresWaitNodeSetParams", "hipGraphExecExternalSemaphoresWaitNodeSetParams", "graph");
subst("cudaGraphExecGetFlags", "hipGraphExecGetFlags", "graph");
subst("cudaGraphExecHostNodeSetParams", "hipGraphExecHostNodeSetParams", "graph");
subst("cudaGraphExecKernelNodeSetParams", "hipGraphExecKernelNodeSetParams", "graph");
subst("cudaGraphExecMemcpyNodeSetParams", "hipGraphExecMemcpyNodeSetParams", "graph");
subst("cudaGraphExecMemcpyNodeSetParams1D", "hipGraphExecMemcpyNodeSetParams1D", "graph");
subst("cudaGraphExecMemcpyNodeSetParamsFromSymbol", "hipGraphExecMemcpyNodeSetParamsFromSymbol", "graph");
subst("cudaGraphExecMemcpyNodeSetParamsToSymbol", "hipGraphExecMemcpyNodeSetParamsToSymbol", "graph");
subst("cudaGraphExecMemsetNodeSetParams", "hipGraphExecMemsetNodeSetParams", "graph");
subst("cudaGraphExecNodeSetParams", "hipGraphExecNodeSetParams", "graph");
subst("cudaGraphExecUpdate", "hipGraphExecUpdate", "graph");
subst("cudaGraphExternalSemaphoresSignalNodeGetParams", "hipGraphExternalSemaphoresSignalNodeGetParams", "graph");
subst("cudaGraphExternalSemaphoresSignalNodeSetParams", "hipGraphExternalSemaphoresSignalNodeSetParams", "graph");
Expand All @@ -3598,7 +3613,6 @@ sub simpleSubstitutions {
subst("cudaGraphHostNodeSetParams", "hipGraphHostNodeSetParams", "graph");
subst("cudaGraphInstantiate", "hipGraphInstantiate", "graph");
subst("cudaGraphInstantiateWithFlags", "hipGraphInstantiateWithFlags", "graph");
subst("cudaGraphInstantiateWithParams", "hipGraphInstantiateWithParams", "graph");
subst("cudaGraphKernelNodeCopyAttributes", "hipGraphKernelNodeCopyAttributes", "graph");
subst("cudaGraphKernelNodeGetAttribute", "hipGraphKernelNodeGetAttribute", "graph");
subst("cudaGraphKernelNodeGetParams", "hipGraphKernelNodeGetParams", "graph");
Expand All @@ -3620,7 +3634,6 @@ sub simpleSubstitutions {
subst("cudaGraphNodeGetEnabled", "hipGraphNodeGetEnabled", "graph");
subst("cudaGraphNodeGetType", "hipGraphNodeGetType", "graph");
subst("cudaGraphNodeSetEnabled", "hipGraphNodeSetEnabled", "graph");
subst("cudaGraphNodeSetParams", "hipGraphNodeSetParams", "graph");
subst("cudaGraphReleaseUserObject", "hipGraphReleaseUserObject", "graph");
subst("cudaGraphRemoveDependencies", "hipGraphRemoveDependencies", "graph");
subst("cudaGraphRetainUserObject", "hipGraphRetainUserObject", "graph");
Expand Down
31 changes: 15 additions & 16 deletions docs/tables/CUDA_Driver_API_functions_supported_by_HIP.md
Original file line number Diff line number Diff line change
Expand Up @@ -1851,12 +1851,12 @@
|`cuGraphAddEmptyNode`|10.0| | | |`hipGraphAddEmptyNode`|4.5.0| | | | |
|`cuGraphAddEventRecordNode`|11.1| | | |`hipGraphAddEventRecordNode`|5.0.0| | | | |
|`cuGraphAddEventWaitNode`|11.1| | | |`hipGraphAddEventWaitNode`|5.0.0| | | | |
|`cuGraphAddExternalSemaphoresSignalNode`|11.2| | | |`hipGraphAddExternalSemaphoresSignalNode`|6.1.0| | | | |
|`cuGraphAddExternalSemaphoresWaitNode`|11.2| | | |`hipGraphAddExternalSemaphoresWaitNode`|6.1.0| | | | |
|`cuGraphAddExternalSemaphoresSignalNode`|11.2| | | |`hipGraphAddExternalSemaphoresSignalNode`|5.7.0| | | | |
|`cuGraphAddExternalSemaphoresWaitNode`|11.2| | | |`hipGraphAddExternalSemaphoresWaitNode`|5.7.0| | | | |
|`cuGraphAddHostNode`|10.0| | | |`hipGraphAddHostNode`|5.0.0| | | | |
|`cuGraphAddKernelNode`|10.0| | | |`hipGraphAddKernelNode`|4.3.0| | | | |
|`cuGraphAddMemAllocNode`|11.4| | | |`hipGraphAddMemAllocNode`|5.5.0| | | | |
|`cuGraphAddMemFreeNode`|11.4| | | |`hipDrvGraphAddMemFreeNode`|6.1.0| | | | |
|`cuGraphAddMemFreeNode`|11.4| | | |`hipDrvGraphAddMemFreeNode`|6.2.0| | | |6.2.0|
|`cuGraphAddMemcpyNode`|10.0| | | |`hipDrvGraphAddMemcpyNode`|6.0.0| | | | |
|`cuGraphAddMemsetNode`|10.0| | | |`hipDrvGraphAddMemsetNode`|6.1.0| | | | |
|`cuGraphAddNode`|12.2| | | |`hipGraphAddNode`|6.2.0| | | |6.2.0|
Expand All @@ -1879,19 +1879,18 @@
|`cuGraphExecDestroy`|10.0| | | |`hipGraphExecDestroy`|4.3.0| | | | |
|`cuGraphExecEventRecordNodeSetEvent`|11.1| | | |`hipGraphExecEventRecordNodeSetEvent`|5.0.0| | | | |
|`cuGraphExecEventWaitNodeSetEvent`|11.1| | | |`hipGraphExecEventWaitNodeSetEvent`|5.0.0| | | | |
|`cuGraphExecExternalSemaphoresSignalNodeSetParams`|11.2| | | |`hipGraphExecExternalSemaphoresSignalNodeSetParams`|6.1.0| | | | |
|`cuGraphExecExternalSemaphoresWaitNodeSetParams`|11.2| | | |`hipGraphExecExternalSemaphoresWaitNodeSetParams`|6.1.0| | | | |
|`cuGraphExecGetFlags`|12.0| | | |`hipGraphExecGetFlags`|6.1.0| | | | |
|`cuGraphExecExternalSemaphoresSignalNodeSetParams`|11.2| | | |`hipGraphExecExternalSemaphoresSignalNodeSetParams`|5.7.0| | | | |
|`cuGraphExecExternalSemaphoresWaitNodeSetParams`|11.2| | | |`hipGraphExecExternalSemaphoresWaitNodeSetParams`|5.7.0| | | | |
|`cuGraphExecGetFlags`|12.0| | | |`hipGraphExecGetFlags`|6.2.0| | | |6.2.0|
|`cuGraphExecHostNodeSetParams`|10.2| | | |`hipGraphExecHostNodeSetParams`|5.0.0| | | | |
|`cuGraphExecKernelNodeSetParams`|10.1| | | |`hipGraphExecKernelNodeSetParams`|4.5.0| | | | |
|`cuGraphExecMemcpyNodeSetParams`|10.2| | | |`hipDrvGraphExecMemcpyNodeSetParams`|6.1.0| | | | |
|`cuGraphExecMemsetNodeSetParams`|10.2| | | |`hipDrvGraphExecMemsetNodeSetParams`|6.1.0| | | | |
|`cuGraphExecNodeSetParams`|12.2| | | |`hipGraphExecNodeSetParams`|6.1.0| | | | |
|`cuGraphExecMemcpyNodeSetParams`|10.2| | | |`hipDrvGraphExecMemcpyNodeSetParams`|6.2.0| | | |6.2.0|
|`cuGraphExecNodeSetParams`|12.2| | | |`hipGraphExecNodeSetParams`|6.2.0| | | |6.2.0|
|`cuGraphExecUpdate`|10.2| | | |`hipGraphExecUpdate`|5.0.0| | | | |
|`cuGraphExternalSemaphoresSignalNodeGetParams`|11.2| | | |`hipGraphExternalSemaphoresSignalNodeGetParams`|6.1.0| | | | |
|`cuGraphExternalSemaphoresSignalNodeSetParams`|11.2| | | |`hipGraphExternalSemaphoresSignalNodeSetParams`|6.1.0| | | | |
|`cuGraphExternalSemaphoresWaitNodeGetParams`|11.2| | | |`hipGraphExternalSemaphoresWaitNodeGetParams`|6.1.0| | | | |
|`cuGraphExternalSemaphoresWaitNodeSetParams`|11.2| | | |`hipGraphExternalSemaphoresWaitNodeSetParams`|6.1.0| | | | |
|`cuGraphExternalSemaphoresSignalNodeGetParams`|11.2| | | |`hipGraphExternalSemaphoresSignalNodeGetParams`|5.7.0| | | | |
|`cuGraphExternalSemaphoresSignalNodeSetParams`|11.2| | | |`hipGraphExternalSemaphoresSignalNodeSetParams`|5.7.0| | | | |
|`cuGraphExternalSemaphoresWaitNodeGetParams`|11.2| | | |`hipGraphExternalSemaphoresWaitNodeGetParams`|5.7.0| | | | |
|`cuGraphExternalSemaphoresWaitNodeSetParams`|11.2| | | |`hipGraphExternalSemaphoresWaitNodeSetParams`|5.7.0| | | | |
|`cuGraphGetEdges`|10.0| | | |`hipGraphGetEdges`|5.0.0| | | | |
|`cuGraphGetEdges_v2`|12.3| | | | | | | | | |
|`cuGraphGetNodes`|10.0| | | |`hipGraphGetNodes`|4.5.0| | | | |
Expand All @@ -1910,8 +1909,8 @@
|`cuGraphLaunch`|10.0| | | |`hipGraphLaunch`|4.3.0| | | | |
|`cuGraphMemAllocNodeGetParams`|11.4| | | |`hipGraphMemAllocNodeGetParams`|5.5.0| | | | |
|`cuGraphMemFreeNodeGetParams`|11.4| | | |`hipGraphMemFreeNodeGetParams`|5.5.0| | | | |
|`cuGraphMemcpyNodeGetParams`|10.0| | | |`hipDrvGraphMemcpyNodeGetParams`|6.1.0| | | | |
|`cuGraphMemcpyNodeSetParams`|10.0| | | |`hipDrvGraphMemcpyNodeSetParams`|6.1.0| | | | |
|`cuGraphMemcpyNodeGetParams`|10.0| | | |`hipDrvGraphMemcpyNodeGetParams`|6.2.0| | | |6.2.0|
|`cuGraphMemcpyNodeSetParams`|10.0| | | |`hipDrvGraphMemcpyNodeSetParams`|6.2.0| | | |6.2.0|
|`cuGraphMemsetNodeGetParams`|10.0| | | |`hipGraphMemsetNodeGetParams`|4.5.0| | | | |
|`cuGraphMemsetNodeSetParams`|10.0| | | |`hipGraphMemsetNodeSetParams`|4.5.0| | | | |
|`cuGraphNodeFindInClone`|10.0| | | |`hipGraphNodeFindInClone`|5.0.0| | | | |
Expand All @@ -1922,7 +1921,7 @@
|`cuGraphNodeGetEnabled`|11.6| | | |`hipGraphNodeGetEnabled`|5.5.0| | | | |
|`cuGraphNodeGetType`|10.0| | | |`hipGraphNodeGetType`|5.0.0| | | | |
|`cuGraphNodeSetEnabled`|11.6| | | |`hipGraphNodeSetEnabled`|5.5.0| | | | |
|`cuGraphNodeSetParams`|12.2| | | |`hipGraphNodeSetParams`|6.1.0| | | | |
|`cuGraphNodeSetParams`|12.2| | | |`hipGraphNodeSetParams`|6.2.0| | | |6.2.0|
|`cuGraphReleaseUserObject`|11.3| | | |`hipGraphReleaseUserObject`|5.3.0| | | | |
|`cuGraphRemoveDependencies`|10.0| | | |`hipGraphRemoveDependencies`|5.0.0| | | | |
|`cuGraphRemoveDependencies_v2`|12.3| | | | | | | | | |
Expand Down
Loading

0 comments on commit 415033c

Please sign in to comment.