I would say that there is no such a way already implemented.
The tool you are looking for is DataParallel but that’s implemented only for GPU parallelization.
You can try to dig into that code to see if you can manually emulate it for CPU.
I think the standard pipeline is computing a forward-backward, average gradients and use optim.step()