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

Discuss about the latest internet and intranet technologies, Latest Interne...

Latest Internet and Intranet technologies Even though the security capabilities of the latest Internet and Intranet technologies have enabled the companies to control the avail

Give some examples of private network addresses, Give some examples of priv...

Give some examples of private network addresses. 10.0.0.0 with a subnet mask of 255.0.0.0 172.16.0.0 with subnet mask of 255.240.0.0 192.168.0.0 with subnet mask of 255.2

Hierarchy of dns servers application layer , Hierarchy of DNS Servers ...

Hierarchy of DNS Servers DNS uses a large number of server organized in hierarchical  fashion  and distribution  around the world. No single DNS server has all  of the  mappin

Routing and routed protocols, What is difference among routing and routed p...

What is difference among routing and routed protocols? Ans) i) Routing use for top path selection ii) Routed protocol carries on source and destination information.

What is dynamic host configuration protocol, How does dynamic host configur...

How does dynamic host configuration protocol aid in network administration? Instead of having to visit every client computer to configure a static IP address, the network admin

Define the bulletin board intranet, Define the Bulletin Board Intranet ...

Define the Bulletin Board Intranet This type of Intranet in an organisation extends to everyone the capability to review or update information that would normally be placed

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

Differentiate between adsl and dsl, ENTERPRISE NETWORKING 1. Explain th...

ENTERPRISE NETWORKING 1. Explain that what is a cable? Classify different types of cables. 2. Elaborate switch? Write down the functionalities of switch. 3. Describe rout

Layers, what are the layers covered under end to end later connectivity?

what are the layers covered under end to end later connectivity?

Full form of httpd, Full form of HTTPd It stands for HTTP daemon. HT...

Full form of HTTPd It stands for HTTP daemon. HTTPd is the program run on a UNIX platform to establish a Web server. On other platforms, such as Microsoft Windows NT, the We

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