guix-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[bug#39588] gnu: Add mpich, scalapack-mpich, mumps-mpich, pt-scotch-mpic


From: zimoun
Subject: [bug#39588] gnu: Add mpich, scalapack-mpich, mumps-mpich, pt-scotch-mpich, python-mpi4py-mpich
Date: Wed, 19 Feb 2020 14:34:56 +0100

Hi Maurice,

On Tue, 18 Feb 2020 at 18:58, Maurice Brémond <address@hidden> wrote:

> guix time-machine --commit=c70261bfb993cebc23cd80042de3f52a8b7932a4 -- \
>   environment -K --pure --ad-hoc mumps-openmpi \
>   --with-input=mpi=mpich --with-input=openmpi=mpich --
>
> This fails on my machine for the pt-scotch check (there is the same
> error with scalapack check)
>
> Invalid error code (-2) (error ring index 127 invalid)
> INTERNAL ERROR: invalid error code fffffffe (Ring Index out of range) in 
> MPID_nem_tcp_init:373
> Fatal error in PMPI_Init: Other MPI error, error stack:
> MPIR_Init_thread(586)..............:
> MPID_Init(224).....................: channel initialization failed
> MPIDI_CH3_Init(105)................:
> MPID_nem_init(324).................:
> MPID_nem_tcp_init(175).............:
> MPID_nem_tcp_get_business_card(401):
> MPID_nem_tcp_init(373).............: gethostbyname failed, localhost (errno 0)
>
> If I go into the build directory and launch the check manually after
> sourcing the environment-variables file, it works...
>
> So it seems that this is related to guix and the guixbuild environment in
> the definition of the package.

Considering mumps-openmpi (or scalapack), the package definition contains:

--8<---------------cut here---------------start------------->8---
(arguments
 `(#:configure-flags `("-DBUILD_SHARED_LIBS:BOOL=YES")
   #:phases (modify-phases %standard-phases
              (add-before 'check 'mpi-setup
        ,%openmpi-setup))))
--8<---------------cut here---------------end--------------->8---

so you have right. It seems being an environment issue.

The flag '--with-inputs=openmpi=mpich' changes the MPI implementation
but then at the checking phase, the environment variables (see
%openmpi-setup in gnu/packages/mpi.scm) are not necessarily set for
mpich.

The digression about implicit inputs was not relevant, sorry. :-)

Well, to restore the discussion about the variants '*-mpich' instead
of '*-openmpi', we could use a 'with-mpich' similar to 'with-python2'
or 'with-ocaml4.07' rewritting correctly the definition.


Hope that helps,
simon





reply via email to

[Prev in Thread] Current Thread [Next in Thread]