ExternalStream¶
- class torch.cuda.ExternalStream(stream_ptr, device=None, **kwargs)[source][source]¶
外部分配的 CUDA 流的包装器。
此类用于包装在其他库中分配的流,以便于数据交换和多库交互。
注意
此类不管理流生命周期,用户有责任在使用此类时保持引用的流处于活动状态。
- 参数
stream_ptr (int) – cudaStream_t 值的整数表示形式。外部分配。
device (torch.device 或 int, 可选) – 最初分配流的设备。如果设备指定不正确,则后续使用此流的启动可能会失败。
- record_event(event=None)[source]¶
记录事件。
- 参数
event (torch.cuda.Event, 可选) – 要记录的事件。如果未给出,将分配一个新的事件。
- 返回
已记录的事件。
- synchronize()[source]¶
等待此流中的所有内核完成。
注意
这是
cudaStreamSynchronize()
的包装器:请参阅 CUDA Stream 文档 以获取更多信息。
- wait_event(event)[source]¶
使提交到流的所有未来工作等待事件。
- 参数
event (torch.cuda.Event) – 要等待的事件。