快捷方式

ExternalStream

class torch.cuda.ExternalStream(stream_ptr, device=None, **kwargs)[源代码]

围绕外部分配的 CUDA 流的包装器。

此类用于包装在其他库中分配的流,以便于数据交换和多库交互。

注意

此类不管理流的生命周期,用户有责任在使用此类时保持引用的流处于活动状态。

参数
  • stream_ptr (int) – cudaStream_t 值的整数表示形式。在外部分配。

  • device (torch.deviceint, 可选) – 流最初分配到的设备。如果设备指定错误,则随后使用此流的启动可能会失败。

query()

检查是否已完成所有提交的工作。

返回值

一个布尔值,指示此流中的所有内核是否已完成。

返回类型

bool

record_event(event=None)

记录事件。

参数

event (torch.cuda.Event, 可选) – 要记录的事件。如果没有给出,将分配一个新的事件。

返回值

已记录的事件。

synchronize()

等待此流中的所有内核完成。

注意

这是围绕 cudaStreamSynchronize() 的包装器:有关更多信息,请参阅 CUDA 流文档

wait_event(event)

使提交到流的所有未来工作等待事件。

参数

event (torch.cuda.Event) – 要等待的事件。

注意

这是围绕 cudaStreamWaitEvent() 的包装器:有关更多信息,请参阅 CUDA 流文档

此函数在等待 event 之前返回:只有未来的操作受到影响。

wait_stream(stream)

与另一个流同步。

提交到此流的所有未来工作将等待直到在调用时提交到给定流的所有内核完成。

参数

stream (Stream) – 要同步的流。

注意

此函数在等待 stream 中当前排队的内核之前返回:只有未来的操作受到影响。

文档

访问 PyTorch 的全面开发者文档

查看文档

教程

获取针对初学者和高级开发者的深入教程

查看教程

资源

查找开发资源并获得问题的解答

查看资源