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

Security goals confidentiality- integrity- digital signature, Question 1   ...

Question 1   This question concerns the main security goals (confidentiality, integrity, availability). Describe a situation which provides the goal of confidentiality but does not

What is mesh network, What is mesh network? A network in which there ar...

What is mesh network? A network in which there are many network links among computers to provide multiple paths for data to travel.

WOrkstation, Interdepences of workstation hardware and software

Interdepences of workstation hardware and software

Distributed route computation, In distributed routing computation, every pa...

In distributed routing computation, every packet switch calculates its routing table locally and transmit messages to the neighbors. It also updates information regularly. If a pac

Determine the window positions for succession of events, Two neighbouring n...

Two neighbouring nodes (A and B) use a Go-Back-N protocol with a 3-bit sequence number and a window size of 4. Acknowledgments are cumulative. Assuming A is transmitting and B is r

Explain about error detection, Q. Explain about Error Detection? Data c...

Q. Explain about Error Detection? Data can be corrupted during transmission because of accidents, Storms, sudden increase in electricity and voltage / decrease in signal power

State about data and data files - information, State about data and data fi...

State about data and data files - Information The third and major component of the system liable to be attacked is the data and data files used by the company. It is the most s

Analysis of parallel algorithms, A generic algorithm is mostly analyzed on ...

A generic algorithm is mostly analyzed on the basis of the following parameters: the time complexity (implementation time) and the space complexity (amount of space necessary). Usu

UDP Programming, I have a larget text file of 1MB, how do i break down into...

I have a larget text file of 1MB, how do i break down into chunks of packets to send over UDP? byte b[]=new byte[1024]; FileInputStream f=new FileInputStream("input.txt

What is one basic requirement for establishing vlan, What is one basic requ...

What is one basic requirement for establishing VLANs? A VLAN needs dedicated equipment on each end of the connection that permits messages entering the Internet to be encrypted

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