I want to run UPC program on my linux cluster with 4 nodes(each with 24 threads), UPC has provided "udp mpi and smp " netwrok when compiling the code. But in my case, which netwrok type should i use and how to write the machine file if i want to run 24 threads on one nodes. Regards
If you want to run on a single node of any system, you can use smp conduit (the easiest to setup job spawning, it always just works with no setup).
Assuming this is an ethernet-connected cluster, then for 2 or more nodes you want udp conduit. This will require some setup depending on what other cluster software you have installed. The upcrun documentation is here. If your mpirun
is already setup to spawn jobs across your cluster nodes, then upcrun
can use that to spawn udp conduit jobs with the following settings:
GASNET_SPAWNFN=C
GASNET_CSPAWN_CMD='mpirun -np %N %C'
Otherwise you'll need to setup passwordless ssh access to your cluster nodes and use ssh-based spawning, see this tutorial.