Stream¶
- class paddle.device.cuda. Stream ( device=None, priority=None ) ¶
CUDA stream 的句柄。
参数¶
device (paddle.CUDAPlace()|int|None,可选) - 希望分配 stream 的设备。如果是 None 或者负数,则设备为当前的设备。如果是正数,则必须小于设备的个数。默认值为 None。
priority (int|None,可选) - stream 的优先级。优先级可以为 1(高优先级)或者 2(正常优先级)。如果优先级为 None,优先级为 2(正常优先级)。默认值为 None。
代码示例¶
# required: gpu
import paddle
s1 = paddle.device.cuda.Stream(paddle.CUDAPlace(0), 1)
s2 = paddle.device.cuda.Stream(0, 1)
s3 = paddle.device.cuda.Stream()
方法¶
wait_event(event)¶
使所有将来提交到 stream 的任务等待 event 中已获取的任务。
参数
event (CUDAEvent) - 要等待的 event。
代码示例
COPY-FROM: paddle.device.cuda.Stream.wait_event
wait_stream(stream)¶
和给定的 stream 保持同步。
参数
stream (CUDAStream) - 要同步的 stream。
代码示例
COPY-FROM: paddle.device.cuda.Stream.wait_stream
record_event(event=None)¶
标记一个 CUDA event 到当前 stream 中。
参数
event (CUDAEvent,可选) - 要标记的 event。如果 event 为 None,新建一个 event。默认值为 None。
- 返回
-
被标记的 event。
代码示例
COPY-FROM: paddle.device.cuda.Stream.record_event