Join GitHub today
GitHub is home to over 40 million developers working together to host and review code, manage projects, and build software together.Sign up
flux-shell: populate PMI_process_mapping key #2278
I forgot to populate this key, which, if present, is used by MPI to determine which procs can used shared memory to communicate because they are on the same node.
Add a helper function to libpmi, then use it in the shell's pmi implementation.
Add some tests that verify cliques work as intended for simple cases.
Add a helper for encoding the PMI_process_mapping value from an array of 'struct pmi_map_block's. Link clique.c in with both libpmi_server.so and libpmi_client.so instead of just the client, so this server-side helper can be used by server implementations.
Problem: PMI_process_mapping is unavailable for clique computation by MPI tasks. Add logic to generate this key, and add it to the PMI KVS hash on each shell. If the key cannot be set because the value exceeds the static value length, emit a log message on stderr but don't treat it as an error since the client can run without clique information. Fixes #2277
Problem: this description of callbacks from the PMI protocol engine was unclear. It sounds like the whole thing is blocked while one callback is handled. Reword to emphasize that only the task that caused the callback is effectively blocked while awaiting a response. Other tasks may continue to work in the protocol engine, and the shell's reactor is never stalled.
PMI_process_mapping is added to the local PMI hash at initialization, and should have the same value on every shell. But because it's in the hash, it's considered "dirty data" to be committed to the shared KVS during a PMI_Barrier. Explicitly exclude this key from the KVS transaction committed during the PMI_Barrier, and thus avoid overhead that has no effect.
@@ Coverage Diff @@ ## master #2278 +/- ## ========================================== + Coverage 80.84% 80.84% +<.01% ========================================== Files 213 213 Lines 33419 33458 +39 ========================================== + Hits 27016 27049 +33 - Misses 6403 6409 +6
On Tue, Jul 30, 2019, 9:41 PM Mark Grondona ***@***.***> wrote: Merged #2278 <#2278> into master. — You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub <#2278?email_source=notifications&email_token=AABJPW4KYJQEF4656NRLKDDQCEJYVA5CNFSM4IH7NI52YY3PNVWWK3TUL52HS4DFWZEXG43VMVCXMZLOORHG65DJMZUWGYLUNFXW5KTDN5WW2ZLOORPWSZGOSZI32CY#event-2521939211>, or mute the thread <https://github.com/notifications/unsubscribe-auth/AABJPW7BYQM5XKTVC5V3QNTQCEJYVANCNFSM4IH7NI5Q> .