Skip to content

Commit 46ca8ac

Browse files
Andy-Jostclaude
andcommitted
cuda.core: trim the memcpy node update docstrings
The update() docstrings on MemcpyNode and ExecutableMemcpyNode now say only what a caller needs: nodes recorded by stream capture are supported. The driver's memory-type bookkeeping stays in code comments. Co-Authored-By: Claude Fable 5.1 <[email protected]>
1 parent fb71159 commit 46ca8ac

2 files changed

Lines changed: 4 additions & 16 deletions

File tree

‎cuda_core/cuda/core/graph/_subclasses.pyi‎

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -187,11 +187,7 @@ class MemcpyNode(GraphNode):
187187
Omitted parameters preserve their current values. ``dst_owner`` and
188188
``src_owner`` may only accompany their corresponding raw addresses.
189189
Multidimensional, pitched, offset, and array-backed memcpy nodes are
190-
not supported. Nodes recorded by stream capture are supported. The
191-
driver stores their operands as unified addresses, and this call keeps
192-
that record for a replaced operand as well, because an instantiated
193-
graph does not accept a change of an operand's memory type; the update
194-
can then be applied with :meth:`~graph.Graph.update`.
190+
not supported. Nodes recorded by stream capture are supported.
195191
196192
With drivers from CUDA 12.2 through 13.1, the node's intended CUDA
197193
context must be current when this method runs. With the CUDA 13 build
@@ -403,9 +399,7 @@ class ExecutableMemcpyNode(ExecutableGraphNode):
403399
def update(self, *, dst: Buffer | int, src: Buffer | int, size: int) -> None:
404400
"""Replace all one-dimensional memcpy parameters for future launches.
405401
406-
An operand the driver recorded as a unified address, as it does for a
407-
node recorded by stream capture, stays unified: the driver does not
408-
accept a change of an operand's memory type in an executable graph.
402+
Nodes recorded by stream capture are supported.
409403
"""
410404
@property
411405
def is_enabled(self) -> bool:

‎cuda_core/cuda/core/graph/_subclasses.pyx‎

Lines changed: 2 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -858,11 +858,7 @@ cdef class MemcpyNode(GraphNode):
858858
Omitted parameters preserve their current values. ``dst_owner`` and
859859
``src_owner`` may only accompany their corresponding raw addresses.
860860
Multidimensional, pitched, offset, and array-backed memcpy nodes are
861-
not supported. Nodes recorded by stream capture are supported. The
862-
driver stores their operands as unified addresses, and this call keeps
863-
that record for a replaced operand as well, because an instantiated
864-
graph does not accept a change of an operand's memory type; the update
865-
can then be applied with :meth:`~graph.Graph.update`.
861+
not supported. Nodes recorded by stream capture are supported.
866862

867863
With drivers from CUDA 12.2 through 13.1, the node's intended CUDA
868864
context must be current when this method runs. With the CUDA 13 build
@@ -1577,9 +1573,7 @@ cdef class ExecutableMemcpyNode(ExecutableGraphNode):
15771573
) -> None:
15781574
"""Replace all one-dimensional memcpy parameters for future launches.
15791575

1580-
An operand the driver recorded as a unified address, as it does for a
1581-
node recorded by stream capture, stays unified: the driver does not
1582-
accept a change of an operand's memory type in an executable graph.
1576+
Nodes recorded by stream capture are supported.
15831577
"""
15841578
cdef cydriver.CUdeviceptr c_dst
15851579
cdef cydriver.CUdeviceptr c_src

0 commit comments

Comments
 (0)