Boost logo

Boost Users :

Subject: [Boost-users] Boost test and openmpi
From: Martin Vymazal (martin.vymazal_at_[hidden])
Date: 2014-02-14 05:48:21


 I have the following code:

#define BOOST_TEST_MODULE mpi_functionality
#include <boost/test/unit_test.hpp>

#include "mpi.h"

struct MPI_Functionality_Fixture
    m_argc = boost::unit_test::framework::master_test_suite().argc;
    m_argv = boost::unit_test::framework::master_test_suite().argv;

  int m_argc;
  char** m_argv;

BOOST_FIXTURE_TEST_SUITE( MPI_Functionality_TestSuite,
MPI_Functionality_Fixture )

BOOST_AUTO_TEST_CASE( mpi_functionality_parenv_init )

BOOST_AUTO_TEST_CASE( mpi_functionality_parenv_finalize )


The code compiles fine, but I have the following problem when I try to run it.
When I run as

  'mpirun ./my_executable' or 'mpirun -np 3 ./my_executable'

everything goes fine. On the other hand, when I run as


I get the following error:
unknown location(0): fatal error in "mpi_functionality_parenv_finalize":
unrecognized signal

Outside of Boost, it is perfectly possible to write a program which calls
MPI_Init and MPI_Finalize and it does not have to be used with mpirun.
I wonder if this (different) behavior of Boost test is normal. I did not find
any remarks regarding Boost test and mpi in the tutorial.

Best regards,

   Martin Vymazal

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at