GNU bug report logs -
#74940
[PATCH] gnu: openmpi-4: Fix hardcoded call to ssh command.
Previous Next
Full log
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
This patch fixes a runtime error when launching an MPI program using
mpiexec/mpirun in an environment where the ssh command is not
available.
* gnu/packages/mpi.scm (openmpi-4)[inputs]: Add openssh-sans-x.
(openmpi-4)[arguments]: Fix path in code.
Change-Id: I65255186c37b6eaba3c283c7046163abc2cb38b7
---
The runtime error can be reproduced with:
---8<------------------>8---
$ guix shell -C openmpi <at> 4 hello -- mpirun -np 2 hello
--------------------------------------------------------------------------
The value of the MCA parameter "plm_rsh_agent" was set to a path
that could not be found:
plm_rsh_agent: ssh : rsh
Please either unset the parameter, or check that the path is correct
--------------------------------------------------------------------------
[guix-A102:00001] [[INVALID],INVALID] FORCE-TERMINATE AT Not found:-13 - error plm_rsh_component.c(335)
---8<------------------>8---
The size of the closure as given by guix size is 406.7 MiB after the
patch vs 398.3 MiB before the patch.
---
gnu/packages/mpi.scm | 11 ++++++++++-
1 file changed, 10 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm
index 661531abb9..60a1952809 100644
--- a/gnu/packages/mpi.scm
+++ b/gnu/packages/mpi.scm
@@ -53,6 +53,7 @@ (define-module (gnu packages mpi)
#:use-module (gnu packages parallel)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages ssh)
#:use-module (gnu packages valgrind)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match))
@@ -220,7 +221,8 @@ (define-public openmpi-4
gfortran
libfabric
libevent
- opensm)
+ opensm
+ openssh-sans-x)
(if-supported psm)
(if-supported psm2)
(if-supported ucx)
@@ -291,6 +293,13 @@ (define-public openmpi-4
'("./ompi/mca/io/romio321/src/io_romio321_component.c")
(("MCA_io_romio321_COMPLETE_CONFIGURE_FLAGS")
"\"[elided to reduce closure]\""))))
+ (add-before 'build 'ssh-absolute-path
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "./orte/mca/plm/rsh/plm_rsh_component.c"
+ (("mca_plm_rsh_component.agent = \"ssh : rsh\";")
+ (format #f "mca_plm_rsh_component.agent = \"~a : rsh\";"
+ (search-input-file inputs
+ "bin/ssh"))))))
(add-before 'build 'scrub-timestamps ;reproducibility
(lambda _
(substitute* '("ompi/tools/ompi_info/param.c"
base-commit: cd018214a3c0319451ab46855ea395b2be6a15dc
--
2.46.0
This bug report was last modified 145 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.