80 likes | 206 Views
MPI: Message-Passing Interface. Presented By: Joe Schmitz. Network Programming. “The network is the computer.” Basic examples of network programming Security Database Connectivity Network protocols for : HTTP, TCP, and UDP. Networking Technologies. Problem Definition.
E N D
MPI: Message-Passing Interface Presented By: Joe Schmitz
Network Programming • “The network is the computer.” • Basic examples of network programming • Security • Database Connectivity • Network protocols for : HTTP, TCP, and UDP.
Problem Definition • How different systems can communicate with each other.
Description of Technology • A message-passing library specification-- message-passing model -- not a compiler specification -- not a specific product • For parallel computers, clusters, and heterogeneous networks
Programming Example • #include <stdio.h> • #include "mpi.h" • int main(int argc, char* argv[]){ • int rank, size; //process rank and number of processes • MPI_Init(&argc, &argv); //MPI initialize • MPI_Comm_size(MPI_COMM_WORLD, &size); • MPI_Comm_rank(MPI_COMM_WORLD, &rank); • printf("Hello world from process %d of %d\n", rank, size); • MPI_Finalize(); //MPI finalize • return 0; • }
References • MPI-2: Extensions to the Message-Passing Interface, University of Tennessee, 1997. • Wikimedia Foundation, Anonymous, Wikipedia, Message Passing Interface, Date accessed: Sept. 28, 2005, http://en.wikipedia.org/wiki/Message_Passing_Interface • University of Kassel, Anonymous, Parawiki, MPI – Parallel Programming, Feb., 23, 2005, http://parawiki.plm.eecs.uni-kassel.de/parawiki/index.php/MPI • Gropp, William, Argonne National Laboratory, Argonne, IL, http://www-unix.mcs.anl.gov/mpi/tutorial/gropp/talk.html#Node0