Basics Distributed training explained: https://lambdalabs.com/blog/multi-node-pytorch-distributed-training-guide#message-passing