[Fedora-packaging] MPI and Fortran drafts

Jussi Lehtola jussilehtola at fedoraproject.org
Sun Jul 26 17:00:37 UTC 2009


Quoting "Milos Jakubicek" <xjakub at fi.muni.cz>:

> On 26.7.2009 14:38, Jussi Lehtola wrote:
>> Hello again,
>>
>>
>> I have updated the MPI draft at
>> https://fedoraproject.org/wiki/PackagingDrafts/MPI
>> to take into account the comments that araised in discussion on the
>> list.
>
> Looks great, just three minor comments:
>
> 1) Shouldn't the suffix for OpenMPI be just "openmpi" instead of  
> "mpi"? It would be consistent with other suffixes (simply the  
> %{name} of the compiler package) and self-explanatory what  
> implementation it is.

Yes, that would be more consistent. However, it would break  
compatibility with the current naming of apps and users would have to  
re-learn the names of the binaries :)

Also, I'd like to stress OpenMPI since AFAIK it is, all in all, the  
best implementation out there.

But, as the interface to the whole MPI stack is going to change  
anyway, it is maybe better to change to a consistent naming right  
away. Changed.

> 2) With the current directory layout (i.e. a FHS-friendly one), the  
> suffixes for binaries and libraries are not necessary anymore, am I  
> right? In that case I think they are even not desirable (what MPI  
> implementation (or no MPI) is used will be controlled by the  
> environment-modules so this would be just annoying when writing e.g.  
> scripts using MPI software etc.)

IMHO having the suffix is still better, that way you can run the  
serial version as well if you need it for something.

In scripts this is very easy, as you can use ${MPI_SUFFIX} e.g.

  #!/bin/bash

  # Load LAM
  #module load lam-x86_64
  # Load Open MPI
  module load openmpi-x86_64
  # Load MPICH2
  #module load mpich2-x86_64

  # Preprocess in serial mode
  foo < foo.in
  # Run calculation
  mpirun -np 4 foo${MPI_SUFFIX}
  # Run more processing
  mpirun -np 4 bar${MPI_SUFFIX}

> 3) I've modified the draft with a SHOULD: split headers into  
> %{name}-headers. In this case %{name}-%{mpi}-devel needs to require  
> only %{name}-headers (otherwise %{name}-devel will pull in %{name}  
> unnecessarily). In my POV this could be even a MUST (the depedency  
> on the non-MPI build is really not needed). Please review the wiki  
> diff from its history!

OK, this is in case the headers are the same in all of the cases.
-- 
Jussi Lehtola
Fedora Project Contributor
jussilehtola at fedoraproject.org





More information about the Fedora-packaging mailing list