FS#78786 - [openmpi] openmpi-4.1.5-openpmix_4.2.3.patch breaks spawn
Attached to Project:
Arch Linux
Opened by Hans (sukanka) - Thursday, 15 June 2023, 12:41 GMT
Last edited by David Runge (dvzrv) - Saturday, 02 September 2023, 17:54 GMT
Opened by Hans (sukanka) - Thursday, 15 June 2023, 12:41 GMT
Last edited by David Runge (dvzrv) - Saturday, 02 September 2023, 17:54 GMT
|
Details
Description: openmpi 4.1.5 won't spawn with OpenPMIx v4.2.3.
The patch
[openmpi-4.1.5-openpmix_4.2.3.patch](https://gitlab.archlinux.org/archlinux/packaging/packages/openmpi/-/blob/main/openmpi-4.1.5-openpmix_4.2.3.patch)
breaks spawn.
Additional info: * package version(s): openmpi-4.1.5-2 * link to upstream bug report: https://github.com/open-mpi/ompi/issues/11749 * A working patch: https://github.com/open-mpi/ompi/issues/11749#issuecomment-1591599763 Steps to reproduce: An MWE (copied from upstream) built with `gcc main.c -lmpi` and run by `./a.out` ```c #include <stdio.h> #include <mpi.h> int main(int argc, char* argv[]) { MPI_Init(NULL, NULL); MPI_Comm comm; MPI_Comm parent, child; MPI_Comm_get_parent(&parent); if (parent == MPI_COMM_NULL) { int errors[3]; MPI_Comm_spawn(argv[0], NULL, 3, MPI_INFO_NULL, 0, MPI_COMM_WORLD, &child, errors); MPI_Intercomm_merge(child, 0, &comm); MPI_Comm_free(&child); } else { MPI_Intercomm_merge(parent, 1, &comm); } int rank; MPI_Comm_rank(comm, &rank); printf("Hello, I am rank %d in the merged comm\n", rank); MPI_Barrier(comm); MPI_Comm_free(&comm); MPI_Finalize(); return 0; } ``` Desired output (the order does not matter): ``` Hello, I am rank 0 in the merged comm Hello, I am rank 3 in the merged comm Hello, I am rank 1 in the merged comm Hello, I am rank 2 in the merged comm ``` |
This task depends upon
Closed by David Runge (dvzrv)
Saturday, 02 September 2023, 17:54 GMT
Reason for closing: Fixed
Additional comments about closing: Fixed with openmpi 4.1.5-4
Saturday, 02 September 2023, 17:54 GMT
Reason for closing: Fixed
Additional comments about closing: Fixed with openmpi 4.1.5-4

The fix has been merged, see
https://github.com/open-mpi/ompi/pull/11767

An updated openmpi is now in extra-testing