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

Role of software in intranet, Role of Software in Intranet For an Intr...

Role of Software in Intranet For an Intranet to be successful, it must have strong software support. In this section, a brief description of the operating system, groupware an

What layer can optionally support reliability, Ans) The Transport Layer : ...

Ans) The Transport Layer : Segments upper-layer applications. Establishes an end-to-end connection. Sends segments from one end host to another. Optionally, make sures

How many cables are needed, QUESTION a) List the seven layers of the IS...

QUESTION a) List the seven layers of the ISO-OSI model and briefly describe the role of each layer b) Describe the functions of the following intermediate systems- Rep

Illustrate the term- search engine and surfing, Illustrate the term- Search...

Illustrate the term- Search Engine and Surfing Search Engine: Software used to find information on the Web. Examples are Google, Lycos and Yahoo. Server: A computer with

Determine the application areas of intranet, Determine the Application area...

Determine the Application areas of intranet The uses of an Intranet are only limited by imagination. Some of the larger sectors where the Intranet can be easily and success fu

synchronization principles of parallel programming , In multiprocessing, v...

In multiprocessing, various processors have to to communicate with each other. Therefore, synchronisation is needed between them. The correctness and performance of parallel execut

What is lrc, What is LRC? In LRC, a block of bits is separated into row...

What is LRC? In LRC, a block of bits is separated into rows and a redundant row of bits is added to the whole block. It can detect burst errors. If two bits in one data unit ar

Layer responsible for putting 1s and 0s into a logical group, Name the laye...

Name the layer responsible for putting 1s and 0s into a logical group? Ans) Frames are broken down into 1s and 0s and placed onto the physical medium by the Data Lin layer.

command saves the configuration stored in ram to nvram, Which command save...

Which command saves the configuration stored in RAM to NVRAM Ans) copy running-config startup-config is the command which saves the configuration stored in RAM to NVRAM

Explain the following: cdma and fdma, Question 1 Explain GSM digital cellu...

Question 1 Explain GSM digital cellular System model Question 2 Explain cellular Digital Packet Data(CDPD) system with the help of CDPD network reference model Question 3

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