Hi,
No you cannot expect the training to give the exact same result. This is because floating point operations are not associative. So different implementations can lead to very small difference. If you then do gradient descent, it has the tendency to increase these differences very quickly leading to different results.
One way to test this is to set the same weights for both modules and make sure that the difference for a single forward/backward is <1e-5.