NAME

Parallel::MPI - Perl interface to the MPI message passing system

SYNOPSIS

use Parallel::MPI;
MPI_Init();
. . .
MPI_Finalize();

DESCRIPTION

The following is a summary of the available constants and functions:

Error Handling

If an MPI error occurs, set: $Parallel::MPI::errno $Parallel::MPI::errstr

$Parallel::MPI::exceptions: if set, toss an exception when an error occurs.

Exported constants

Datatypes (not all are supported!)

MPI_2COMPLEX           
MPI_2DOUBLE_COMPLEX    
MPI_2DOUBLE_PRECISION  
MPI_2INT               
MPI_2INTEGER           
MPI_2REAL              
MPI_COMPLEX            
MPI_DATATYPE_NULL      
MPI_DOUBLE             
MPI_DOUBLE_COMPLEX     
MPI_DOUBLE_INT         
MPI_DOUBLE_PRECISION   
MPI_FLOAT              
MPI_FLOAT_INT          
MPI_INT                
MPI_INTEGER            
MPI_BYTE               
MPI_CHAR               
MPI_CHARACTER          
MPI_LOGICAL            
MPI_LONG               
MPI_LONG_DOUBLE        
MPI_LONG_DOUBLE_INT    
MPI_LONG_INT           
MPI_LONG_LONG_INT      
MPI_REAL               
MPI_SHORT              
MPI_SHORT_INT          
MPI_UNSIGNED           
MPI_UNSIGNED_CHAR      
MPI_UNSIGNED_LONG       
MPI_UNSIGNED_SHORT

New Datatypes

MPI_STRING

Status

MPI_ANY_SOURCE    
MPI_ANY_TAG       

Operations

MPI_BAND   
MPI_BOR    
MPI_BXOR   
MPI_LAND   
MPI_LOR    
MPI_LXOR   
MPI_MAX    
MPI_MAXLOC 
MPI_MIN    
MPI_MINLOC 
MPI_OP_NULL
MPI_PROD   
MPI_SUM    

Communicators

MPI_COMM_NULL
MPI_COMM_SELF
MPI_COMM_WORLD

Communicator and Group Comparisons

MPI_CONGRUENT 
MPI_IDENT    
MPI_SIMILAR  
MPI_UNEQUAL  
MPI_VERSION  

Exported functions

  MPI_Init()
  MPI_Finalize()
  MPI_Initialized()

  MPI_Comm_rank(communicator)
  MPI_Comm_size(communicator)
  
  MPI_Send(\$message, length, datatype, destination, tag, communicator)
  MPI_Recv(\$message, length, datatype, source, tag, communicator)
  MPI_Sendrecv(\$message, length, datatype, destination, tag, communicator)
  
  MPI_Barrier(comm)
  MPI_Bcast(\$from, count, datatype, root, communicator)

  MPI_Wtime()
  MPI_Wtick()

  MPI_Abort(communicator, errorcode)

  MPI_Reduce(\$from, \$to, count, datatype, operation, root, communicator)
  MPI_Allreduce(\$from, \$to, count, datatype, operation, communicator)
  MPI_Scatter(\$from, count, type, \$to, count, type, root, communicator)
  MPI_Gather(\$from, count, type, \$to, count, type, root, communicator)

AUTHORS

Josh Wilmes and Chris Stevens

SEE ALSO

MPI man pages. The paper, "Parallel::MPI - An MPI Binding for Perl", included in the Parallel::MPI distribution