7.71. CUgraphEdgeData
Defined in /dvs/p4/build/sw/gpgpu/bin/x86_64_Linux_release/stub/cuda.h
-
struct CUgraphEdgeData
Optional annotation for edges in a CUDA graph.
Note, all edges implicitly have annotations and default to a zero-initialized value if not specified. A zero-initialized struct indicates a standard full serialization of two nodes with memory visibility.
Public Members
-
unsigned char from_port
This indicates when the dependency is triggered from the upstream node on the edge.
The meaning is specfic to the node type. A value of 0 in all cases means full completion of the upstream node, with memory visibility to the downstream node or portion thereof (indicated by
to_port).
Only kernel nodes define non-zero ports. A kernel node can use the following output port types:
CU_GRAPH_KERNEL_NODE_PORT_DEFAULT, CU_GRAPH_KERNEL_NODE_PORT_PROGRAMMATIC, or CU_GRAPH_KERNEL_NODE_PORT_LAUNCH_ORDER.
-
unsigned char to_port
This indicates what portion of the downstream node is dependent on the upstream node or portion thereof (indicated by
from_port).The meaning is specific to the node type. A value of 0 in all cases means the entirety of the downstream node is dependent on the upstream work.
Currently no node types define non-zero ports. Accordingly, this field must be set to zero.
-
unsigned char type
This should be populated with a value from CUgraphDependencyType.
(It is typed as char due to compiler-specific layout of bitfields.) See CUgraphDependencyType.
-
unsigned char reserved[5]
These bytes are unused and must be zeroed.
This ensures compatibility if additional fields are added in the future.
-
unsigned char from_port