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

Describe unbound transmission media, Describe unbound transmission media. ...

Describe unbound transmission media. Unbound transmission media are the media of transmitting data without using any cables. These are not bounded by any physical geography. Ex

Name the layers of osi, List the layers of OSI There are seven layers i...

List the layers of OSI There are seven layers in OSI model a. Physical Layer b. Data Link Layer c. Network Layer d. Transport Layer e. Session Layer f. Presen

Advantage and disadvantage of wiring schemes, ADVANTAGE AND DISADVANTAGE OF...

ADVANTAGE AND DISADVANTAGE OF WIRING SCHEMES:  Each of three wiring procedure has disadvantages and advantages, which are illustrate as follows: RELIABILITY ISSUES:  W

State the congestion avoidance process, State the congestion avoidance proc...

State the congestion avoidance process Notifies the source that congestion avoidance process should be initiated where applicable for traffic in the opposite direction of the r

Implement a web server on personal computer, Question: a) The Systems ...

Question: a) The Systems Administrator of Acme Company performs the backup of the website database file every day at 15:50. The original file location is database.sql. The Ad

What is piggy backing, What is Piggy Backing? A process called piggybac...

What is Piggy Backing? A process called piggybacking is used to get better the efficiency of the bidirectional protocols. When a frame is carrying data from A to B, it can also

Differentiate between rarp and arp, TCP/IP Protocol Suite 1. What is th...

TCP/IP Protocol Suite 1. What is the concept of Multi-protocol encapsulation in ATM networks? 2. Differentiate between RARP and ARP. 3. Differentiate TDP and UDP. 4. D

Introduction of dns - domain name server, Introduction of DNS While di...

Introduction of DNS While discussing about the Internet, one things comes automatically in the n=mind and hence it is directly or indirectly depended on DNS. The DNS which sta

Define remote procedure call (rpc), RPC adumbrates the intricacies of the ...

RPC adumbrates the intricacies of the network by using the ordinary procedure call mechanism familiar to each programmer. A client process calls a function on a remote server and

What is bookmark, What is Bookmark A list of pages a user likes to f...

What is Bookmark A list of pages a user likes to frequently visit. Netscape® Navigator and Explorer® have a "bookmark" menu item which allows users to add favourite sites vi

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