[gmx-users] Fwd: make check error

Mark Abraham mark.j.abraham at gmail.com
Fri Oct 21 11:24:29 CEST 2016


Hi,

On Fri, Oct 21, 2016 at 10:26 AM Anna Lappala <lappala.anna at gmail.com>
wrote:

>
> > Hi,
> >
> > please decrypt what you said- it was obvious from my earlier steps that
> i am making gromacs with mpi support.


I haven't seen your original cmake call, so I can't tell. These tests all
run whether you've configured with MPI or not. I've been forced to make
educated guesses all along, which makes it frustrating for everyone :-)


> Again, what is it if not mpirun? How do i check all this?
>

You're trying to run on a compute cluster - it has documentation about what
it supports for running MPI. You might have to use srun, or mpiexec, or
aprun or poe or something else, and each of those have a different way of
expressing "run this program on n ranks." So all we have implemented is a
way for the problem to be solved, and a default that will often work.

>> "it wants you to choose multiple ranks, before you can use the
> >> aforementioned CMake options to describe to ctest how to use it."
> > No, all it "wants" is to locate mpirun in any of the aforementioned
> folders. The tests run successfully if i put mpirun executable in the
> folder it wants to.
> > This does not however change the situation when i rerun the cmake
> command.
> > So let me be more clear. What do i do to make mpirun and which one of
> the steps that i am doing is wrong? See the commands in previous emails.
>

mpirun isn't something we are building. It's infrastructure provided by
your MPI installation for taking GROMACS and running it across multiple
nodes. But depending on your MPI flavour, it could be named anything else,
so for now the only want to get the tests to run for some of the MPI
flavours is for you to consult your local documentation and work out how to
use it. You'll need to do this anyway to learn how to run the equivalent of

mpirun -np 16 gmx_mpi mdrun -s your-simulation

Mark


> >
> >> On Oct 21, 2016, at 01:47, Mark Abraham <mark.j.abraham at gmail.com>
> wrote:
> >>
> >> Hi,
> >>
> >> Assuming you are actually building GROMACS to run with MPI support, you
> >> have a command that will be used to run an MPI program. Often that is
> >> called mpirun, but not always. You need to find out what that is, and
> how
> >> it wants you to choose multiple ranks, before you can use the
> >> aforementioned CMake options to describe to ctest how to use it.
> >>
> >> Mark
> >>
> >>> On Fri, Oct 21, 2016 at 1:25 AM Anna Vernon <lappala.anna at gmail.com>
> wrote:
> >>>
> >>> err, it does not find mpirun? I am confused
> >>>
> >>> Test project /home/anna/Downloads/gromacs-2016/build
> >>>    Start 21: MdrunMpiTests
> >>> Could not find executable
> /home/anna/Downloads/gromacs-2016/build/mpirun
> >>> Looked in the following places:
> >>> /home/anna/Downloads/gromacs-2016/build/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/Release/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/Release/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/Debug/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/Debug/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/MinSizeRel/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/MinSizeRel/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/RelWithDebInfo/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/RelWithDebInfo/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/Deployment/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/Deployment/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/Development/mpirun
> >>> /home/anna/Downloads/gromacs-2016/build/Development/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/Release/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/Release/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/Debug/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/Debug/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/MinSizeRel/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/MinSizeRel/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/RelWithDebInfo/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/RelWithDebInfo/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/Deployment/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/Deployment/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/Development/mpirun
> >>> home/anna/Downloads/gromacs-2016/build/Development/mpirun
> >>> Unable to find executable:
> /home/anna/Downloads/gromacs-2016/build/mpirun
> >>> 1/1 Test #21: MdrunMpiTests ....................***Not Run   0.00 sec
> >>>
> >>> 0% tests passed, 1 tests failed out of 1
> >>>
> >>> Label Time Summary:
> >>> MpiIntegrationTest    =   0.00 sec
> >>>
> >>> Total Test time (real) =   0.00 sec
> >>>
> >>> The following tests FAILED:
> >>>     21 - MdrunMpiTests (Not Run)
> >>> Errors while running CTest
> >>>
> >>>
> >>>> On 20 October 2016 at 16:27, Anna Vernon <lappala.anna at gmail.com>
> wrote:
> >>>>
> >>>> after doing this:
> >>>> cmake .. -DMPIEXEC=mpirun -DMPIEXEC_NUMPROC_FLAG=-np -DNUMPROC=2,
> >>>> -DNUMPROC=3, -DNUMPROC=4, -DNUMPROC=5, -DNUMPROC=6,
> >>> -DNUMPROC=7,-DNUMPROC=8
> >>>> make
> >>>> make check
> >>>> I get this:
> >>>> The following tests FAILED:
> >>>>     21 - MdrunMpiTests (Not Run)
> >>>>     26 - regressiontests/pdb2gmx (Failed)
> >>>> Errors while running CTest
> >>>> CMakeFiles/run-ctest.dir/build.make:49: recipe for target
> >>>> 'CMakeFiles/run-ctest' failed
> >>>> make[3]: *** [CMakeFiles/run-ctest] Error 8
> >>>> CMakeFiles/Makefile2:960: recipe for target
> >>> 'CMakeFiles/run-ctest.dir/all'
> >>>> failed
> >>>> make[2]: *** [CMakeFiles/run-ctest.dir/all] Error 2
> >>>> CMakeFiles/Makefile2:936: recipe for target
> 'CMakeFiles/check.dir/rule'
> >>>> failed
> >>>> make[1]: *** [CMakeFiles/check.dir/rule] Error 2
> >>>> Makefile:544: recipe for target 'check' failed
> >>>> make: *** [check] Error 2
> >>>>
> >>>>
> >>>> On 20 October 2016 at 15:40, Mark Abraham <mark.j.abraham at gmail.com>
> >>>> wrote:
> >>>>
> >>>>> Hi,
> >>>>>
> >>>>> It'd be great to be able to make all things clear to all people, but
> one
> >>>>> person's clarity is another's verbosity :-( But do see
> >>>>> http://manual.gromacs.org/documentation/2016/install-guide/
> >>>>> index.html#using-cmake-command-line-options
> >>>>> .
> >>>>>
> >>>>> Is an example of "cmake -DMPIEXEC=mpirun -DMPIEXEC_NUMPROC_FLAG=-np
> >>>>> -DNUMPROC=6..." more clear, given that many people will want to
> >>> customise
> >>>>> at least one value?
> >>>>>
> >>>>> Mark
> >>>>>
> >>>>>> On Thu, 20 Oct 2016 23:29 Anna Vernon <lappala.anna at gmail.com>
> wrote:
> >>>>>>
> >>>>>> hi
> >>>>>>
> >>>>>> This passage (the one of interest in my case) of documentation is
> >>>>> cryptic:
> >>>>>>
> >>>>>>
> >>>>>> The make check target also runs integration-style tests that may run
> >>>>> with
> >>>>>> MPI if GMX_MPI=ON was set. To make these work, you may need to set
> the
> >>>>>> CMake variables MPIEXEC, MPIEXEC_NUMPROC_FLAG, NUMPROC,
> >>> MPIEXEC_PREFLAGS
> >>>>>> and MPIEXEC_POSTFLAGS so that mdrun-mpi-test_mpi would run on
> multiple
> >>>>>> ranks via the shell command
> >>>>>>
> >>>>>> ${MPIEXEC} ${MPIEXEC_NUMPROC_FLAG} ${NUMPROC} ${MPIEXEC_PREFLAGS} \
> >>>>>>      mdrun-mpi-test_mpi ${MPIEXEC_POSTFLAGS} -otherflags
> >>>>>>
> >>>>>> Typically, one might use variable values mpirun, -np, 2, '', ''
> >>>>>> respectively, in order to run on two ranks.
> >>>>>> Is it possible to explain this more clearly? there are gazillions of
> >>>>> files
> >>>>>> in the cmake folder; where do I actually add the bit of code that
> sets
> >>>>> the
> >>>>>> variables?
> >>>>>>
> >>>>>> On 20 October 2016 at 07:56, Mark Abraham <mark.j.abraham at gmail.com
> >
> >>>>>> wrote:
> >>>>>>
> >>>>>>> Hi,
> >>>>>>>
> >>>>>>> "make check" runs ctest behind the scenes. You can get some more
> >>>>>>> information by running ctest directly. From your build directory,
> >>> try
> >>>>>>>
> >>>>>>> ctest --output-on-failure --tests-regex "MdrunMpiTests"
> >>>>>>> However, I suspect your issues may be already covered at
> >>>>>>> http://manual.gromacs.org/documentation/2016/install-
> >>>>>>> guide/index.html#testing-gromacs-for-correctness
> >>>>>>> e.g.
> >>>>>>> that you have done an MPI build, but you need to customize how you
> >>>>> start
> >>>>>>> your MPI enabled binaries.
> >>>>>>>
> >>>>>>> Mark
> --
> Gromacs Users mailing list
>
> * Please search the archive at
> http://www.gromacs.org/Support/Mailing_Lists/GMX-Users_List before
> posting!
>
> * Can't post? Read http://www.gromacs.org/Support/Mailing_Lists
>
> * For (un)subscribe requests visit
> https://maillist.sys.kth.se/mailman/listinfo/gromacs.org_gmx-users or
> send a mail to gmx-users-request at gromacs.org.
>


More information about the gromacs.org_gmx-users mailing list