Mpi functions and environment, Computer Networking

MPI contains hundreds of functions, a small subset of which is enough for most practical purposes. We shall talk about some of them in this unit.

Functions for MPI Environment:

int MPI_Init ( int *argc, char ** argv)

    It initializes the MPI environment. By that, No MPI function can be called before MPI_Init.

int MPI_Finalize (void)

It stops the MPI environment.  No MPI function can be called after MPI_Finalize. Each MPI process belongs to one or more groups (also known as communicator). Every process is recognized by its rank (0 to group size -1) within the given group. Initially, all processes belong to a default group known as MPI_COMM_WORLD group. Additional groups can be produced by the user as and when needed.  Now, we shall learn some functions related to communicators.

int MPI_Comm_size (MPI_Comm comm,  int *size)

returns variable size that have number of processes in group comm.

int MPI_Comm_rank (MPI_Comm comm,  int *rank)

returns rank of calling process in group comm.

Functions for Message Passing:

MPI processes cannot share memory space and single process cannot directly access other process's variables. Therefore, they need some type of communication between themselves. In MPI environment this communication is in the kind of message passing. A message in MPI has the following fields:

msgaddr: It can be each address in the sender's address space and refers to location in memory where message data begins.

count:  Number of occurrence of data items of message datatype obtained in message.

datatype:  Type of data in message. This field is beneficial in the sense that MPI supports heterogeneous computing and the different nodes may interpret count field differently. For example, if the message have a strings of 2n characters (count =2n), some machines may interpret it have 2n characters and some containing n characters depending upon the storage allocated per character (1 or 2). The basic datatype in MPI having of all basic parts in C and Fortran with two additional types namely MPI_BYTE and MPI_PACKED. MPI_BYTE denotes a byte of 8 bits.

dest or source : Receiving process or Rank of sending in communicator.

tag: Identifier for definite message or type of message. It let the programmer to deal with the arrival of message in an orderly way, even if the arrival of the message is not orderly.

comm.: Communicator. It is an group of a process and object wrapping context .It is allocated by system instead of user.

The functions used for messaging passing are:

int MPI_Send(void *msgaddr, int count,  MPI_Datatype datatype, int dest, int tag, MPI_Comm comm.)

on return, msg can be reused instantly.

int MPI_Recv(void *msgaddr, int count,  MPI_Datatype datatype, int dest, int tag, MPI_Comm comm.)

on return, msg contains requested message.

MPI message passing may be either collective or point-to-point.

Posted Date: 3/2/2013 7:07:23 AM | Location : United States

Related Discussions:- Mpi functions and environment, Assignment Help, Ask Question on Mpi functions and environment, Get Answer, Expert's Help, Mpi functions and environment Discussions

Write discussion on Mpi functions and environment
Your posts are moderated
Related Questions
What are the basic LAN topologies? The three simple LAN topologies that are combined to shape any practical topology are called as basic LAN topologies. They are, Bus Topology

Explain in detail about wireless network Think about unseen terminal problem. Imagine a wireless network consist of five stations, A through E, such that each one them is in r

This assignment will assess parts of objectives 2-6 from the subject outline: 1 Explain the principles of logical design 2 Discuss the strengths and weaknesses of various net

MPI parallel programs are written with conventional languages like, C and Fortran  .One or more header files such as "mpi.h" may be needed to give the necessary definitions and dec

What is Kerberos in Networking? It is an authentication service developed at the Massachusetts Institute of Technology. Kerberos uses encryption to stop intruders from discover

Describe any good security technology A good security technology should be powerful enough to support the features that the administrators need, including rules validation to i

Difference among the communication and transmission? Transmission is a physical movement of information and concern issues as bit polarity, synchronization, clock etc. Commu

Explain in brief about the Throughput The medium access control protocol should make as well-organized use as possible of the wireless medium to maximize capacity. Number of

iLab 2: Office Network Expansion Connect to the iLab here. Submit your assignment to the Dropbox located on the silver tab at the top of this page. (See "Due Da

What is the main purpose of OSPF? OSPF, or Open Shortest Path First, is a link-state routing protocol that uses routing tables to verify the best possible path for data exchang