nn.DataParallel splits the input batch in dim0 and pushes each chunk onto a GPU.
Each GPU will call the forward method thereafter using the current data chunk.
In your case it looks like you are using 3 GPUs.
Since you are apparently using data samples with the batch size in dim1, this will also yield a wrong behavior, since the data should be usually chunked in the batch dimension.
You could permute your data and use batch_first=True in your RNN layers or permute the data chunk to the original shape in the forward method.