[Cado-nfs-discuss] Linear Algebra with MPI

Emmanuel Thomé Emmanuel.Thome at inria.fr
Mon Jun 22 21:40:51 CEST 2015


On Mon, Jun 22, 2015 at 12:44:36PM -0400, Alex Liao wrote:
> Inconsistency -- exactly 4 == 2 * 2 MPI jobs are needed -- got 1

This means that the binaries you are running are unaware of the existence
of other MPI jobs. Most often, this is caused by the fact that you're
trying to go MPI with a non-MPI build.

> Any insight would be much appreciated. I'm using the version of CADO
> pulled from the git repo and compiled using "MPI=/home/alexliao/.openmpi"
> (OpenMPI 1.8.6)

Most probably you haven't. Note that the build directory (by default
$PWD/cado/`hostname`) is not by default dependent on the $MPI variable,
nor are its contents. So if you do a plain "make" to start with, and
later try an MPI build with the command
"MPI=$HOME/packages/openmpi-1.8.6/ make" (no other syntax), then you'll
be screwed because the build directory is without MPI, and object files
won't get rebuilt.

There are several ways to work around this quirk, choosing which way to
go it is a matter of taste. You may want to force a fresh MPI build,
as follows:

rm -rf build/
MPI=$HOME/packages/openmpi-1.8.6/ make

You may also have local.sh decide on the build tree location based on
some influential env. variables. These are excerpts of what I have in my own local.sh:

    build_tree="${up_path}build/`hostname | cut -d. -f1 | sed -e 's/-[0-9]*$//'`"
    if [ "$MPI" ] ; then
        case "$MPI" in
            *mvapich2*) build_tree="${build_tree}.mvapich2";;
            *openmpi*) build_tree="${build_tree}.openmpi";;
    if [ "$DEBUG" ] ; then
        # Dangerous pitfall -- mpicc has the nasty habit of forcing -O2 !
        export CFLAGS="-O0 -g"
        export CXXFLAGS="-O0 -g"

If you can't fix your problem, please post the output of
"MPI=/home/alexliao/.openmpi make cmake"



More information about the Cado-nfs-discuss mailing list