快捷方式

Event

class torch.cuda.Event(enable_timing=False, blocking=False, interprocess=False)[原始碼][原始碼]

CUDA 事件的包裝器。

CUDA 事件是同步標記,可用於監視裝置的進度、精確測量時間以及同步 CUDA 流。

底層 CUDA 事件在首次記錄或匯出到其他程序時延遲初始化。建立後,只有同一裝置上的流才能記錄此事件。但是,任何裝置上的流都可以等待此事件。

引數
  • enable_timing (bool, 可選) – 指示事件是否應測量時間(預設值:False

  • blocking (bool, 可選) – 如果為 True,則 wait() 將是阻塞的(預設值:False

  • interprocess (bool) – 如果為 True,則事件可以在程序間共享(預設值:False

elapsed_time(end_event)[原始碼][原始碼]

返回經過的時間。

報告的時間為毫秒,表示事件記錄後到 end_event 記錄前所經過的時間。

classmethod from_ipc_handle(device, handle)[原始碼][原始碼]

從給定裝置上的 IPC handle 重建事件。

ipc_handle()[原始碼][原始碼]

返回此事件的 IPC handle。

如果尚未記錄,則事件將使用當前裝置。

query()[原始碼][原始碼]

檢查當前由事件捕獲的所有工作是否已完成。

返回值

一個布林值,指示當前由事件捕獲的所有工作是否已完成。

record(stream=None)[原始碼][原始碼]

在給定流中記錄事件。

如果未指定流,則使用 torch.cuda.current_stream()。流的裝置必須與事件的裝置匹配。

synchronize()[原始碼][原始碼]

等待事件完成。

一直等待,直到此事件中當前捕獲的所有工作完成。這會阻止 CPU 執行緒繼續執行,直到事件完成。

注意

這是 cudaEventSynchronize() 的包裝器:有關更多資訊,請參閱 CUDA 事件文件

wait(stream=None)[原始碼][原始碼]

使提交到給定流的所有未來工作等待此事件。

如果未指定流,則使用 torch.cuda.current_stream()

注意

這是 cudaStreamWaitEvent() 的包裝器:有關更多資訊,請參閱 CUDA 事件文件

文件

查閱全面的 PyTorch 開發者文件

檢視文件

教程

獲取適合初學者和高階開發者的深度教程

檢視教程

資源

查詢開發資源並獲得問題解答

檢視資源