/[escript]/trunk/paso/src/Paso_MPI.h
ViewVC logotype

Contents of /trunk/paso/src/Paso_MPI.h

Parent Directory Parent Directory | Revision Log Revision Log


Revision 969 - (show annotations)
Tue Feb 13 23:02:23 2007 UTC (13 years ago) by ksteube
File MIME type: text/plain
File size: 813 byte(s)
Parallelization using MPI for solution of implicit problems.

Parallelization for explicit problems has already been accomplished in
the main SVN branch.

This is incomplete and is not ready for use.


1 #ifndef INC_MPI
2 #define INC_MPI
3
4 #include "Common.h"
5
6 #ifdef PASO_MPI
7 #include "mpi_C.h"
8 #endif
9
10 #define PASO_MPI_TODO { fprintf( stdout, "\nTODO : %s:%d\n", __FILE__, __LINE__); MPI_Finalize(); exit(1); }
11 #define PASO_INFO_ERRORMSG( err, msg ) { char _msg__[256]; sprintf( _msg__, "%s : %s:%d\n", msg, __FILE__, __LINE__ ); Paso_setError( err, _msg__ ); }
12
13 /* Datatypes */
14 struct Paso_MPIInfo{
15 dim_t reference_counter;
16 int size;
17 int rank;
18 #ifdef PASO_MPI
19 MPI_Comm comm;
20 #endif
21 };
22
23 typedef struct Paso_MPIInfo Paso_MPIInfo;
24
25 /* Function prototypes */
26 #ifdef PASO_MPI
27 Paso_MPIInfo* Paso_MPIInfo_alloc( MPI_Comm comm );
28 #endif
29 void Paso_MPIInfo_dealloc( Paso_MPIInfo* );
30 Paso_MPIInfo *Paso_MPIInfo_getReference( Paso_MPIInfo* in );
31 int Paso_MPI_initialized( void );
32
33 #endif // PASO_MPI

  ViewVC Help
Powered by ViewVC 1.1.26