[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [pooma-dev] Re: [PATCH] Robustify async MPI request handling
From: |
Richard Guenther |
Subject: |
Re: [pooma-dev] Re: [PATCH] Robustify async MPI request handling |
Date: |
Tue, 17 Aug 2004 09:12:36 +0200 (CEST) |
On Mon, 16 Aug 2004, Jeffrey D. Oldham wrote:
> Richard Guenther wrote:
>
> > The following patch fixes an error and robustifies MPI request handling.
> >
> > Tested by having it in my local tree for a long time.
> >
> > Ok?
> >
> > Richard.
> >
> >
> > 2004Aug16 Richard Guenther <address@hidden>
> >
> > * src/Threads/IterateSchedulers/SerialAsync.h: Guard against
> > LAM MPI automatically dragging in C++ support, fix message
> > polling return value check, complete messages first, remove
> > unused variable.
>
> What problems does mpicxx.h cause? I am both curious and want to know
> so I can approve the patch.
The problem is incompatible C++ ABIs for the compiler used to build LAM
(gcc 2.95) and the compiler I try to build POOMA with (gcc 3.4), so
linking will fail either with ABI problems or missing symbols if not
linking the C++ support libraries (as the header somehow manages to pull
symbols regardless of not using any of the C++ support). As we don't use
any of the MPI C++ API we don't need its declarations either. Other
MPI implementations require you to explicitly pull mpicxx.h, but LAM aims
to be clever in just doing
#ifdef __cplusplus
#include <mpicxx.h>
#endif
which I think is a bug in LAM, but can be easily worked around by us.
But I can leave this chunk of the patch out, if you like.
Richard.
> >------------------------------------------------------------------------
> >
> >Index: SerialAsync.h
> >===================================================================
> >RCS file:
> >/home/pooma/Repository/r2/src/Threads/IterateSchedulers/SerialAsync.h,v
> >retrieving revision 1.11
> >diff -u -u -r1.11 SerialAsync.h
> >--- SerialAsync.h 8 Jan 2004 21:45:49 -0000 1.11
> >+++ SerialAsync.h 16 Aug 2004 19:22:33 -0000
> >@@ -72,6 +72,7 @@
> > #include <stack>
> > #include "Pooma/Configuration.h"
> > #if POOMA_MPI
> >+# define MPIPP_H // prevent lam mpicxx.h from being included
> > # include <mpi.h>
> > #endif
> >
> >
>
>
> --
> Jeffrey D. Oldham
> address@hidden
>
--
Richard Guenther <richard dot guenther at uni-tuebingen dot de>
WWW: http://www.tat.physik.uni-tuebingen.de/~rguenth/