[Dune-devel] [Dune-Commit] [Commit] dune-grid - f6165ab: [yaspgrid, bugfix] Use canonical communicator type for non-MPI case

Dominic Kempf dominic.r.kempf at gmail.com
Fri Oct 3 12:14:20 CEST 2014


I just had a look into it. The problem is the switch to
CollectiveCommunication. Backwards-compatibility is given in all cases, but
in the case when FakeMPIHelper::getCommunicator() was given to the
constructor. This can indeed be fixed by your patch, so I think its a good
idea.

On the other hand, I will modify the tests to use the new constructors.
That will make the problem vanish, too (but not the question of FULL
backwards compatibility).

On Fri, Oct 3, 2014 at 12:08 PM, Markus Blatt <markus at dr-blatt.de> wrote:

> On Fri, Oct 03, 2014 at 11:54:41AM +0200, Dominic Kempf wrote:
> > Actually, that is nothing new at all. Its been that way "forever".
> >
>
> That does not make it more intuitive. The problem was revealed by the
> new constructors:
>
>
> http://plagula.de:8010/builders/dune-grid%20test/builds/106/steps/check/logs/stdio
>
> > In the sequential case, one wants to use the default
> > CollectiveCommunication (as defined in collectivecommunication.hh). To
> get
> > that default implementation, a template parameter is to be given, that
> > ensures that there is no specialization, that actually does something.
> Yasp
> > uses its own name to do that. Any other name other than MPI_Comm
> > would do.
> > I will have a look into vtktest to check what is wrong there.
> >
> >
> > On Fri, Oct 3, 2014 at 11:23 AM, Markus Blatt <markus at dr-blatt.de>
> wrote:
> >
> > > New commit, appeared at Fri Oct  3 11:23:45 2014 +0200
> > > as part of the following ref changes:
> > >
> > >     branch refs/heads/master    updated from a3ff58a -> f6165ab
> > >
> > > Browsable version:
> > >
> http://cgit.dune-project.org/repositories/dune-grid/commit/?id=f6165aba501863dce958719ebbc2103ae8a646da
> > >
> > > ======================================================================
> > >
> > > commit f6165aba501863dce958719ebbc2103ae8a646da
> > > Author: Markus Blatt <markus at dr-blatt.de>
> > > Date:   Fri Oct 3 11:23:02 2014 +0200
> > >
> > >     [yaspgrid,bugfix] Use canonical communicator type for non-MPI case
> > >
> > >     If people write programs the DUNE way then they will end up with
> > >     Dune::FakeMPIHelper::MPICommunicator as their communicator type.
> > >     Unfortunately Yaspgrid uses YaspGrid<dim, Coordinates> which is far
> > >     from being inituitive and broke vtktest. This patch resorts to
> using
> > >     the canonical choice, Dune::FakeMPIHelper::MPICommunicator, and
> fixes
> > >     the test.
> > >
> > >  dune/grid/yaspgrid.hh | 4 ++--
> > >  1 file changed, 2 insertions(+), 2 deletions(-)
> > >
> > >
> > >
> > > diff --git a/dune/grid/yaspgrid.hh b/dune/grid/yaspgrid.hh
> > > index f54fe6f..832ab7c 100644
> > > --- a/dune/grid/yaspgrid.hh
> > > +++ b/dune/grid/yaspgrid.hh
> > > @@ -89,7 +89,7 @@ namespace Dune {
> > >  #if HAVE_MPI
> > >      typedef CollectiveCommunication<MPI_Comm> CCType;
> > >  #else
> > > -    typedef CollectiveCommunication<Dune::YaspGrid<dim, Coordinates> >
> > > CCType;
> > > +    typedef CollectiveCommunication<FakeMPIHelper::MPICommunicator>
> > > CCType;
> > >  #endif
> > >
> > >      typedef GridTraits<dim,                                     //
> > > dimension of the grid
> > > @@ -167,7 +167,7 @@ namespace Dune {
> > >  #ifdef HAVE_MPI
> > >      typedef CollectiveCommunication<MPI_Comm>
> CollectiveCommunicationType;
> > >  #else
> > > -    typedef CollectiveCommunication<YaspGrid<dim, Coordinates> >
> > > CollectiveCommunicationType;
> > > +    typedef CollectiveCommunication<FakeMPIHelper::MPICommunicator>
> > > CollectiveCommunicationType;
> > >  #endif
> > >
> > >  #ifndef DOXYGEN
> > >
> > > _______________________________________________
> > > Dune-Commit mailing list
> > > Dune-Commit at dune-project.org
> > > http://lists.dune-project.org/mailman/listinfo/dune-commit
> > >
>
> > _______________________________________________
> > Dune-devel mailing list
> > Dune-devel at dune-project.org
> > http://lists.dune-project.org/mailman/listinfo/dune-devel
>
>
> --
> Do you need more support with DUNE or HPC in general?
>
> Dr. Markus Blatt - HPC-Simulation-Software & Services
> http://www.dr-blatt.de
> Hans-Bunte-Str. 8-10, 69123 Heidelberg, Germany
> Tel.: +49 (0) 160 97590858
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.dune-project.org/pipermail/dune-devel/attachments/20141003/599fc333/attachment.htm>


More information about the Dune-devel mailing list