Introduction to parallel programming, Computer Networking

Assignment Help:

Introduction To Parallel Programming

After getting an enormous breakthrough in the serial programming and figuring out its limitations, academicians and computer professionals are focusing now on parallel programming. Parallel programming is a well-liked choice today for multi-processor architectures to solve the complex problems. If developments in the last decade give any indications, then the future belongs to of parallel computing. Parallel programming is intended to take benefits the of non-local resources to save cost and time and overcome the memory constraints.

In this section, we shall introduce parallel programming and its classifications. We shall talk about some of the high level programs used for parallel programming. There are certain compiler-directive based packages, which can be used along with some high level languages. We shall also have a detailed look upon them.

Usually, software has been written for serial computation in which programs are written for computers having a single Central Processing Unit (CPU). Here, the troubles are solved by a series of instructions, implemented one after the other, one at a time, by the CPU. Though, many complex, interrelated events happening at the same time like galactic orbital and planetary events, weather and ocean patterns and tectonic plate drift may needs super high complexity serial software. To solve these big problems and save the computational time, a new programming paradigm called parallel programming was introduced.

To develop a parallel program, we must first decide whether the problem has any part which can be parallelized. There are some problems like producing the Fibonacci sequence in the case of which there is a little scope for parallelization. Once it has been determined that the problem has some segment that can be parallelized, we break the problem into discrete chunks of work that can be distributed to multiple tasks. This partition of the problem may be data-centric or function-centric. In the earlier case, different functions work with different subsets of data while in the latter every function performs a portion of the overall work. Depending upon the type of partition approach, we need communication between the processes. Accordingly, we have to design the mechanisms for process synchronization and mode of communication.


Related Discussions:- Introduction to parallel programming

Comparison of distance-vector and link-state algorithm, DISTANCE-VECTOR ROU...

DISTANCE-VECTOR ROUTING: It is easy to implement. Packet switch modifies its own routing table first. It is used in RIP. LINK-STATE ALGORITHM: It is ve

Bootrom and memory layout, Memory Memory Layout   BOOT...

Memory Memory Layout   BOOTROM This device stores the information of  the startup diagnostic  code in permanently. It performs diagnostics of  hardware  wh

Define pptp (point-to-point tunneling protocol), Can you define PPTP (Point...

Can you define PPTP (Point-to-Point Tunneling Protocol)?

What is the last step in data encapsulation, The Five steps to data encapsu...

The Five steps to data encapsulation (IN ORDER): 1) User information is changed into data. 2) Data is changed into segments. 3) Segments are changed into datagram and pack

Ack received - trasnport layer, ACK Received If an ACK is received by ...

ACK Received If an ACK is received by the  sender. The  SR sender marks  that packet  as having  been received by the receiver.

Parts count method calculation, M E T HOD OF CALCULATION It involves...

M E T HOD OF CALCULATION It involves counting the number of each part type and multiplying with the generic failure rate of each part. On summing up the product, we obtain t

Describe in detail how rsvp actually works, Normal 0 false fa...

Normal 0 false false false EN-IN X-NONE X-NONE MicrosoftInternetExplorer4

On which languages intranet works, On which languages Intranet works ...

On which languages Intranet works Language Support The Intranet works on the basis of scripts written in any of the following languages, viz., SGML, HTML, DHTML, XML, AS

Dijkstra algorithms - network layer and routing , Dijkstra Algorithms T...

Dijkstra Algorithms To calculate its  routing  table  each router applies an algorithm  called  the dijkstra algorithm to its  state database. The dijkstra algorithm  calculate

What is virtual channel, What is virtual channel? Virtual channel is no...

What is virtual channel? Virtual channel is normally a connection from single source to one destination, although multicast connections are also allowed. The other name for vir

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