Closed leon532 closed 5 years ago
Sorry for the late reply. https://github.com/chengdazhi/Deformable-Convolution-V2-PyTorch/blob/1b5851abd404dc71f02ae0110af3540b6877309e/test.py#L627-L631 As in comment, it won't affect the performance. Feel free to ignore. Please reopen this issue if you have a solution. Thx
thx
I checked the code. Numerically the code should be correct. I verified that the error is very small using CUDA 9.0 on a GTX 1080 ~ 1e-16. The error is raised when calculating the gradient for input. The code uses atomicadd to calculate that since one can not possibly know how many time a pixel get used. Then the problem is the sequence of atomicadd is uncertain. Different sequence of adding will result in different value up to numerical error. The gradient on the bias/weight/offset does not have the atomicadd and thus have no such issue.
That's only one possible cause of the issue though. I will double check and see if there is any other problem. For now I don't see any.
I checked the code. Numerically the code should be correct. I verified that the error is very small using CUDA 9.0 on a GTX 1080 ~ 1e-16. The error is raised when calculating the gradient for input. The code uses atomicadd to calculate that since one can not possibly know how many time a pixel get used. Then the problem is the sequence of atomicadd is uncertain. Different sequence of adding will result in different value up to numerical error. The gradient on the bias/weight/offset does not have the atomicadd and thus have no such issue.
You mean I can ignore this exception?
It raises RuntimeError: Backward is not reentrant when i run the test.py.
Is this a serious problem? and how can i resolve it? Thanks for you time and suggestion.