torch.cuda¶
此套件增加了對 CUDA 張量類型的支援。
它實現的功能與 CPU 張量相同,但它們利用 GPU 進行計算。
它是延遲初始化的,因此您可以隨時匯入它,並使用 is_available() 來確定您的系統是否支援 CUDA。
CUDA 語義 中有更多關於使用 CUDA 的詳細資訊。
| 選擇給定串流的 Context-manager。 | |
| 檢查兩個裝置之間是否可以進行點對點存取。 | |
| 傳回指向目前 cuBLAS 控制代碼的 cublasHandle_t 指標 | |
| 傳回目前選定裝置的索引。 | |
| 傳回給定裝置目前選定的  | |
| 傳回給定裝置的預設  | |
| 變更選定裝置的 Context-manager。 | |
| 傳回可用的 GPU 數量。 | |
| 將目前裝置變更為給定物件裝置的 Context-manager。 | |
| 傳回此函式庫編譯時使用的 CUDA 架構清單。 | |
| 取得裝置的 cuda 功能。 | |
| 取得裝置的名稱。 | |
| 取得裝置的屬性。 | |
| 傳回編譯此函式庫時使用的 NVCC gencode 旗標。 | |
| 傳回 cuda 同步作業之偵錯模式的目前值。 | |
| 初始化 PyTorch 的 CUDA 狀態。 | |
| 在 CUDA IPC 釋放 GPU 記憶體後強制收集。 | |
| 傳回一個布林值,表示 CUDA 目前是否可用。 | |
| 傳回 PyTorch 的 CUDA 狀態是否已初始化。 | |
| 根據 nvidia-smi 的指示,傳回過去取樣期間內讀取或寫入全域(裝置)記憶體所花費的時間百分比。 | |
| 設定目前的裝置。 | |
| 設定目前的串流。這是用於設定串流的包裝函式 API。 | |
| 設定 cuda 同步作業的偵錯模式。 | |
| 包裝在選擇給定串流的 Context-manager StreamContext 周圍。 | |
| 等待 CUDA 裝置上所有串流中的所有核心完成。 | |
| 根據 nvidia-smi 的指示,傳回過去取樣期間內一個或多個核心在 GPU 上執行的時間百分比。 | |
| 傳回 GPU 感測器的平均溫度,單位為攝氏度 (°C)。 | |
| 傳回 GPU 感測器的平均功耗,單位為毫瓦 (mW) | |
| 傳回過去取樣期間內 GPU SM 的時脈速度,單位為赫茲 (Hz),如 nvidia-smi 所示。 | |
| 裝置記憶體不足時引發的例外狀況 | 
亂數產生器¶
| 以 ByteTensor 傳回指定 GPU 的亂數產生器狀態。 | |
| 傳回一個 ByteTensor 清單,表示所有裝置的亂數狀態。 | |
| 設定指定 GPU 的亂數產生器狀態。 | |
| 設定所有裝置的亂數產生器狀態。 | |
| 設定目前 GPU 產生亂數的種子。 | |
| 設定所有 GPU 上產生亂數的種子。 | |
| 將產生亂數的種子設定為目前 GPU 的亂數。 | |
| 將產生亂數的種子設定為所有 GPU 上的亂數。 | |
| 傳回目前 GPU 的目前亂數種子。 | 
通訊集體作業¶
| 將張量廣播到指定的 GPU 裝置。 | |
| 將一系列張量廣播到指定的 GPU。 | |
| 對多個 GPU 上的張量求和。 | |
| 將張量分散到多個 GPU。 | |
| 從多個 GPU 裝置收集張量。 | 
串流和事件¶
| CUDA 串流的包裝函式。 | |
| 外部配置的 CUDA 串流的包裝函式。 | |
| CUDA 事件的包裝函式。 | 
圖形(測試版)¶
| 如果在目前的 CUDA 串流上正在進行 CUDA 圖形擷取,則傳回 True,否則傳回 False。 | |
| 傳回一個不透明權杖,表示圖形記憶體集區的 ID。 | |
| CUDA 圖形的包裝函式。 | |
| 將 CUDA 工作擷取到  | |
| 接受可調用物件(函數或  | 
記憶體管理¶
| 釋放快取分配器當前持有的所有未佔用快取記憶體,以便這些記憶體可以在其他 GPU 應用程式中使用,並在 nvidia-smi 中顯示。 | |
| 返回給定裝置上正在執行的程序及其 GPU 記憶體使用情況的人類可讀列印輸出。 | |
| 使用 cudaMemGetInfo 返回給定裝置的全局可用和總 GPU 記憶體。 | |
| 返回給定裝置的 CUDA 記憶體分配器統計資訊字典。 | |
| 返回給定裝置的當前記憶體分配器統計資訊的人類可讀列印輸出。 | |
| 返回所有裝置上 CUDA 記憶體分配器狀態的快照。 | |
| 以位元組為單位返回給定裝置上張量當前佔用的 GPU 記憶體。 | |
| 以位元組為單位返回給定裝置上張量佔用的最大 GPU 記憶體。 | |
| 重置追蹤給定裝置上張量佔用的最大 GPU 記憶體的起點。 | |
| 以位元組為單位返回給定裝置上快取分配器管理的當前 GPU 記憶體。 | |
| 以位元組為單位返回給定裝置上快取分配器管理的最大 GPU 記憶體。 | |
| 設定程序的記憶體分數。 | |
| 已棄用;請參閱  | |
| 已棄用;請參閱  | |
| 重置追蹤給定裝置上快取分配器管理的最大 GPU 記憶體的起點。 | |
| 重置 CUDA 記憶體分配器追蹤的「峰值」統計資訊。 | |
| 使用 CUDA 記憶體分配器執行記憶體分配。 | |
| 刪除使用 CUDA 記憶體分配器分配的記憶體。 | |
| 返回一個字串,描述由  | |
| 從 so 檔案載入的 CUDA 記憶體分配器。 | |
| 將當前使用的記憶體分配器更改為提供的分配器。 | 
NVIDIA 工具擴展 (NVTX)¶
| 描述在某個時間點發生的瞬間事件。 | |
| 將一個範圍推入嵌套範圍跨度的堆疊中。 | |
| 從嵌套範圍跨度的堆疊中彈出一個範圍。 | |
| 上下文管理器/裝飾器,在其範圍開始時推入一個 NVTX 範圍,並在其結束時彈出該範圍。 | 
Jiterator(測試版)¶
| 為元素操作建立一個 jiterator 生成的 cuda 核心。 | |
| 為支援返回一個或多個輸出的元素操作建立一個 jiterator 生成的 cuda 核心。 |