As I run a code on a cluster using spmd, sometimes a worker gets disconnected and the execution stops. In another instance, the job became 'queued' after running for multiple hours and then eventually the execution stopped. What could be potential reasons for these?