Message passing programming, Computer Networking

Assignment Help:

Message passing is probably the most extensively used parallel programming paradigm today. It is the mainly natural, portable and efficient approach for distributed memory systems. It gives natural synchronization between the processes so that explicit synchronization of Parallel Programming & Parallel Algorithms memory access is redundant. The programmer is dependable for determining all parallelism. In this programming model, multiple processes across the arbitrary number of machines, each with its own local memory, replace data through send and receive communication among processes. This model can be best understood by the diagram shown in Figure:

1770_Message passage model.png

                                                                                        Message passage model

As the diagram specify, each processor has its own local memory. Processors perform computations with the data in their own memories and interact with the other processors, as and when needed, by communication network using message-passing libraries. The messages have the data being sent. But data is not only the constituent of the message. The other components in the message are:

  • The address / identity of the processor that sending the message;
  • Initial address of the data on the sending processor;
  • The type of data being sent;
  • The size of data;
  • The address / identity of processor(s) are receiving the message, and
  • Initial address of storage for the data on the receiving processor.

Once the message has been produced it is sent by the communication network. The communication can be in the following two forms:

i) Point-to-point Communication

The easiest form of message is a point-to- point communication and message is sent from the sending processor to a receiving processor. Message passing in point-to-point communication can be in two modes: synchronous and asynchronous. In synchronous transfer mode, the next message is sent only after the acknowledgement of delivery of the last message. In this mode the series of the messages is maintained. In asynchronous transfer mode, no acknowledgement for delivery is needed.

ii) Collective Communications

Some message-passing systems allow communication involving more than two processors. This type of communication may be called collective communication. Collective communication can be in one of these modes:

Barrier: In this mode no real transfer of data takes place unless all the processors involved in the communication implement a particular block, called barrier block, in their message passing program.

Broadcast: Broadcasting may be one-to-all or all-to-all. In one-to-all broadcasting, one processor sends the similar message to numerous destinations with a one operation whereas in all-to-all broadcasting, communication takes place in many-to-many fashion. The messages might be personalised or non-personalized. In a personalized broadcasting, unique messages are being sent to each destination processor.

Reduction: In this, one member of the group takes data from the other members, decreases them to a one data item which is usually made available to all of the participating processors.


Related Discussions:- Message passing programming

Network infrastructure upgrade, Network Infrastructure: This project will r...

Network Infrastructure: This project will require replacement of major networking components throughout the office. Virtualization will result in increased speed and reliability fo

Nfs best performance, what parameters should i have for the best nfs v4 per...

what parameters should i have for the best nfs v4 performance?

Timing in mpi program, MPI_Wtime ( ) returns elapsed wall-clock time in sec...

MPI_Wtime ( ) returns elapsed wall-clock time in seconds as some arbitrary point in past. Elapsed time for program segment is specified by the difference between MPI_Wtime values a

Evaluate error detection in crc polynomials, Q. Evaluate Error Detection in...

Q. Evaluate Error Detection in CRC Polynomials? The divisor in the CRC generator is most habitually represented as an algebraic Polynomial. Reasons: It is short

What are the five major network services, What are the five major network s...

What are the five major network services? Major Network Services are: a. File Services b. Message Services c.  Print Services  d.  Application Services e.  Datab

Subtle point, It is possible for a datagram to generate ICMP errors after i...

It is possible for a datagram to generate ICMP errors after it has been fragmented. For example, suppose that each of two fragments cannot be delivered. Seemingly, this would mean

What are the working of software team, What are the working of software tea...

What are the working of software team The software team has to learn every bit of things related to computers. Since different users work on different platforms and application

Connectionless service, In connectionless schema, there is no connection re...

In connectionless schema, there is no connection required. The source of data includes destination information in data and transmit to the network. Network transmit each data item

Explain pipeline processing, Pipeline Processing Pipelining is a scheme...

Pipeline Processing Pipelining is a scheme to realize, overlapped parallelism in the proposed way out of a problem on a digital computer in an economical way. To understand the

Aaa, explain layered protocol architecture

explain layered protocol architecture

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd