MPI
MPI- , ( ), C FORTRAN. MPI C++, MPI . MPI- . , , . MPI - , . MPI . , . , nCUBE2 xnc, - () mpirun, , - . MPI 1.1 . MPI - , , , MPI .
, - . , - . 0..groupsize-1. , . MPI , MPI-, MPI_COMM_WORLD. , , groupsize NPROCS - , . .
, , MPI - , . , 130 , :
- MPI ;
- , -;
- , ;
- ;
- ;
- .
MPI , , . , , , . , , , . , 6 MPI , 24 [3].
|
|
MPI :
- - . .
- - MPI- .
- - . .
- - , . , , .
- - , , , . .
MPI C FORTRAN.
C , . . 0. int (true 1, false - 0). , mpi.h. MPI , . MPI , . 1.1 MPI .
1.1. MPI- C | |
MPI | C |
MPI_CHAR | signed char |
MPI_SHORT | signed short int |
MPI_INT | signed int |
MPI_LONG | signed long int |
MPI_UNSIGNED_CHAR | unsigned char |
MPI_UNSIGNED_SHORT | unsigned short int |
MPI_UNSIGNED | unsigned int |
MPI_UNSIGNED_LONG | unsigned long int |
MPI_FLOAT | float |
MPI_DOUBLE | double |
MPI_LONG_DOUBLE | long double |
MPI_BYTE | |
MPI_PACKED |
1.1 1.2 , , , MPI, , DOUBLE COMPLEX, MPI_DOUBLE_COMPLEX. MPI_BYTE MPI_PACKED - . , ( 5.1).
|
|
MPI 6 , , . IN , OUT , INOUT - , .
MPI
MPI- () MPI: MPI_Init. , , , MPI_COMM_WORLD. -. 0 groupsize-1, groupsize . , MPI_COMM_SELF, .
MPI_Init C FORTRAN:
C:
int MPI_Init(int *argc, char ***argv)
C main, . FORTRAN IERROR .
MPI MPI_Finalize
C:
int MPI_Finalize(void)
MPI- .
MPI_Comm_size
C:
int MPI_Comm_size(MPI_Comm comm, int *size)
IN | comm | - ; |
OUT | size | - comm. |
comm.
( 6) COMM MPI_COMM_WORLD MPI_COMM_SELF, MPI. .