pytorch torch.backends.cudnn設置做用

cuDNN使用非肯定性算法,而且能夠使用torch.backends.cudnn.enabled = False來進行禁用git

若是設置爲torch.backends.cudnn.enabled =True,說明設置爲使用使用非肯定性算法github

而後再設置:算法

torch.backends.cudnn.benchmark = true

那麼cuDNN使用的非肯定性算法就會自動尋找最適合當前配置的高效算法,來達到優化運行效率的問題網絡

通常來說,應該遵循如下準則:優化

  1. 若是網絡的輸入數據維度或類型上變化不大,設置  torch.backends.cudnn.benchmark = true  能夠增長運行效率;
  2. 若是網絡的輸入數據在每次 iteration 都變化的話,會致使 cnDNN 每次都會去尋找一遍最優配置,這樣反而會下降運行效率。

因此咱們常常看見在代碼開始出二者同時設置:spa

torch.backends.cudnn.enabled = True
torch.backends.cudnn.benchmark = True
相關文章
相關標籤/搜索