Open ronawho opened 5 years ago
udp defaults to segment everything, which doesn't support pshm. We might want to recommend smp (which defaults to segment fast and has pshm support) since that can be much faster -- https://gitter.im/chapel-lang/chapel?at=5cc38cdd97dcb371d81cabd7
pshm info:
This feature uses shared memory communication among the processes (aka
GASNet nodes) within a single compute node (where the other alternatives
are multi-threading via a PAR or PARSYNC build; or use of the conduit's
API to perform the communication).
Note that not all conduits and operating systems support this feature.
For more information, see the section below entitled "GASNet inter-Process
SHared Memory (PSHM)".
Definitely need to make CHPL_GASNET_SEGMENT=fast
the default, its a night and day difference!
NumLocales | SMP/UDP-Fast | UDP-Everything (Default) |
---|---|---|
1 | 0.009726 | 009726 |
2 | 0.016445 | 0.570676 |
4 | 0.025065 | 0.984162 |
8 | 0.051521 | 1.2397 |
16 | 0.099913 | 3.57597 |
32 | 0.17136 | 7.76913 |
64 | 0.261266 | 11.4257 |
Our current multi-locale execution docs are geared towards how to run distributed across multiple nodes, but most users (especially those just getting started) will be running/debugging on a single node that's emulating multiple locales. We should make that common case easier to find.