import torch.backends.cudnn as cudnn
cudnn.benchmark = True
設置這個 flag 可以讓內置的 cuDNN 的 auto-tuner 自動尋找最適合當前配置的高效算法,來達到優化運行效率的問題。
如果網絡的輸入數據維度或類型上變化不大,也就是每次訓練的圖像尺寸都是一樣的時候,設置 torch.backends.cudnn.benchmark = True 可以增加運行效率;
如果網絡的輸入數據在每次 iteration 都變化的話,會導致 cnDNN 每次都會去尋找一遍最優配置,這樣反而會降低運行效率