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
相关文章
相关标签/搜索