Hi,
I am not sure how exactly you are trying to use DDP to split your model between devices: DDP usecase is to parallelize training. Could you take a look at model parallel tutorial instead? (you can also combine it with DDP once you set it up), e.g.
https://pytorch.org/tutorials/intermediate/model_parallel_tutorial.html 4
it requires you to move inputs between GPUs, not just the models e.g.
x = self.relu(self.net1(x.to('cuda:0'))) 
return self.net2(x.to('cuda:1'))