convolution layer when cudnn_off = False will cause random result #14941
-
Hi,every one, |
Beta Was this translation helpful? Give feedback.
Replies: 4 comments
-
Hey, this is the MXNet Label Bot. |
Beta Was this translation helpful? Give feedback.
-
@xiaodao2049 : I think the reason is that there are multiple implementations of convolution when using cundd and cudnn chooses the best algorithm based on your available system resources at runtime. You could try using "MXNET_ENFORCE_DETERMINISM" (Refer this PR for full context) and see if this helps. If not you could turn off autotune by setting "MXNET_CUDNN_AUTOTUNE_DEFAULT" to 0 and see if that helps. @apeforest , please correct me if any part of my answer is misrepresented :) @mxnet-label-bot add [question, cudnn] |
Beta Was this translation helpful? Give feedback.
-
@mxnet-label-bot update [question] |
Beta Was this translation helpful? Give feedback.
-
@vdantu thanks for your reply. I have tried both solution you mentioned,MXNET_ENFORCE_DETERMINISM doesn't work, maybe my mx version is too old. Setting "MXNET_CUDNN_AUTOTUNE_DEFAULT" to 0 thrown an std::bad_alloc error. I will upgrade my mxnet and try the first solution again. |
Beta Was this translation helpful? Give feedback.
@xiaodao2049 : I think the reason is that there are multiple implementations of convolution when using cundd and cudnn chooses the best algorithm based on your available system resources at runtime. You could try using "MXNET_ENFORCE_DETERMINISM" (Refer this PR for full context) and see if this helps. If not you could turn off autotune by setting "MXNET_CUDNN_AUTOTUNE_DEFAULT" to 0 and see if that helps.
@apeforest , please correct me if any part of my answer is misrepresented :)
@mxnet-label-bot add [question, cudnn]