code: public static int cuGraphAddHostNode(CUgraphNode phGraphNode, CUgraph hGraph, CUgraphNode dependencies[], long numDependencies, CUDA_HOST_NODE_PARAMS nodeParams) 
      {
          return checkResult(cuGraphAddHostNodeNative(phGraphNode, hGraph, dependencies, numDependencies, nodeParams));
      }
docs: Creates a host execution node and adds it to a graph.<br>
  <br>
  Creates a new CPU execution node and adds it to \p hGraph with \p numDependencies
  dependencies specified via \p dependencies and arguments specified in \p nodeParams.
  It is possible for \p numDependencies to be 0, in which case the node will be placed
  at the root of the graph. \p dependencies may not have any duplicate entries.
  A handle to the new node will be returned in \p phGraphNode.<br>
  <br>
  When the graph is launched, the node will invoke the specified CPU function.
  
  @param phGraphNode     - Returns newly created node
  @param hGraph          - Graph to which to add the node
  @param dependencies    - Dependencies of the node
  @param numDependencies - Number of dependencies
  @param nodeParams      - Parameters for the host node
  
  @return
  CUDA_SUCCESS,
  CUDA_ERROR_DEINITIALIZED,
  CUDA_ERROR_NOT_INITIALIZED,
  CUDA_ERROR_INVALID_VALUE
  
  @see
  JCudaDriver#cuLaunchHostFunc
  JCudaDriver#cuGraphHostNodeGetParams
  JCudaDriver#cuGraphHostNodeSetParams
  JCudaDriver#cuGraphCreate
  JCudaDriver#cuGraphDestroyNode
  JCudaDriver#cuGraphAddChildGraphNode
  JCudaDriver#cuGraphAddEmptyNode
  JCudaDriver#cuGraphAddKernelNode
  JCudaDriver#cuGraphAddMemcpyNode
  JCudaDriver#cuGraphAddMemsetNode