PDL::Parallel::MPI Perl module contains routines to allow PDL objects to be moved around on parallel systems using the MPI library.
SYNOPSIS
use PDL;
use PDL::Parallel::MPI;
mpirun(2);
MPI_Init();
$rank = get_rank();
$a=$rank * ones(2);
print "my rank is $rank and $a is $an";
$a->move( 1 => 0);
print "my rank is $rank and $a is $an";
MPI_Finalize();
MPI STANDARD CALLS
Most of the functions from the MPI standard may be used from this module on regular perl data. This is functionallity inherited from the Parallel::MPI module. Read the documentation for Parallel::MPI to see how to use.
One may mix mpi calls on perl built-in-datatypes and mpi calls on piddles.
use PDL;
use PDL::Parallel::MPI;
mpirun(2);
MPI_Init();
$rank = get_rank();
$pi = 3.1;
if ($rank == 0) {
MPI_Send($pi,1,MPI_DOUBLE,1,0,MPI_COMM_WORLD);
} else {
$message = zeroes(1);
$message->receive(0);
print "pi is $messagen";
}
MPI_Finalize();
Product's homepage
Requirements:
· Perl