GNU bug report logs - #27905
changes for openmpi

Previous Next

Package: guix-patches;

Reported by: Dave Love <fx <at> gnu.org>

Date: Tue, 1 Aug 2017 12:55:02 UTC

Severity: normal

Done: ludovic.courtes <at> inria.fr (Ludovic Courtès)

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: ludovic.courtes <at> inria.fr (Ludovic Courtès)
To: Dave Love <fx <at> gnu.org>
Cc: 27905 <at> debbugs.gnu.org
Subject: [bug#27905] changes for openmpi
Date: Mon, 21 Aug 2017 17:12:06 +0200
Hi!

I’ve applied most of the patches.  I have a few remaining questions:

Dave Love <fx <at> gnu.org> skribis:

>>From 67a59e734dd451d1e64d450dcebeb23d60996f3e Mon Sep 17 00:00:00 2001
> From: Dave Love <dave.love <at> manchester.ac.uk>
> Date: Mon, 31 Jul 2017 14:58:39 +0100
> Subject: [PATCH] gnu: hwloc: Replace "lib" output with "nogui", containing 
>  all but lstopo.
>
> A compute node typically wants the non-GUI programs available, which still
> have a small closure.
>
> * mpi.scm (hwloc)[outputs]: Replace lib with nogui.
> (hwloc)[arguments]: Change configure --prefix; use "nogui" output,
> not "lib"; populate "all" output.
> (openmpi)[inputs]: Use hwloc-nogui.

The downside of this is that the “nogui” output is less discoverable
(and it’s another user-visible breakage.)

Also, it shouldn’t make any difference to the closure size of openmpi
anyway, no?

>>From 1772aa47c3bc71521340d7f569d4d906ab7f53e9 Mon Sep 17 00:00:00 2001
> From: Dave Love <dave.love <at> manchester.ac.uk>
> Date: Mon, 31 Jul 2017 15:01:59 +0100
> Subject: [PATCH] gnu: valgrind: Add "doc" and "openmpi" outputs.
>
> Also don't configure openmpi with valgrind; rely on the wrapper
> library from the valgrind package, like Fedora and Debian.
>
> * gnu/packages/valgrind.scm (valgrind)[outputs]: New field.
> [arguments]: Add install-doc and install-openmpi phases.
> [description]: Mention openmpi output.
> * gnu/packages/mpi.scm (openmpi)[arguments]: Don't configure with
> valgrind.

I’ve installed the doc-output-for-valgrind part, as a separate patch.

Regarding the rest:

> +         (add-after 'install 'install-openmpi
> +           (lambda* (#:key outputs #:allow-other-keys)
> +             (let ((dest (format #f "~a/lib/valgrind"
> +                                 (assoc-ref outputs "openmpi"))))
> +               (mkdir-p dest)
> +               (zero?
> +                (system (format #f "mv ~a/lib/valgrind/libmpiwrap* ~a"
> +                                (assoc-ref outputs "out") dest)))))))))

Why move it to a separate output?  After all, we can keep it in “out”
since all it costs is the size of libmpiwrap.so, right?

Also, I assume that this is functionally equivalent to Open MPI’s
built-in Valgrind support, is it?

>>From ec65c9d847c30d51bf83b49b397bc1ca20b7ca11 Mon Sep 17 00:00:00 2001
> From: Dave Love <dave.love <at> manchester.ac.uk>
> Date: Mon, 31 Jul 2017 17:15:19 +0100
> Subject: [PATCH 8/8] gnu: openmpi: Remove references to compiler pathnames in
>  "_info" programs.
>
> This reduces the closure greatly, but note that the Fortran .mod files are
> gfortran version-specific, so there should probably be development packages
> for each incompatible version.  (The runtime is supposed to be more-or-less
> version-independent unless the libgfortran soname changes.)  There may still
> be a case for a separate runtime output.
>
> * gnu/packages/mpi.scm (openmpi)[arguments]: Add "remove-absolute" phase.

Great, I added the URL of previous discussions on this topic.

With the changes I pushed the closure size is already at 378.5 instead
of 700.8 MiB, pretty cool!

Thank you,
Ludo’.




This bug report was last modified 7 years and 259 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.