torchrun will launch LOCAL processes for you. To run a distributed job its still on you to run torchrun on each of the nodes. TorchX has builtins to launch the job for you, and in doing so sets sensible defaults so that you don’t have to manually set configurations like  --rdzv_backend, --rdzv_id etc.
Try:
$ pip install torchx-nightly
$ torchx run -s local_cwd dist.ddp -j 1x4 --script YOUR_SCRIPT.py <args to script>

Where -j is of the form {nnodes}x{nproc_per_node} so if you wanted to simulate a 2 node (each node running 4 procs per node) you’d set -j 2x4.
No need to worry about the different rendezvous settings now. Once you are ready to submit to a remote cluster (assuming you’ve setup kubernetes or slurm) then you’d run
$ torchx run -s kubernetes dist.ddp -j 1x4 --image YOUR_DOCKER_IMG --script SCRIPT.py <args to script>