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

Illustrate user agent services, Q. Illustrate User Agent Services? Use...

Q. Illustrate User Agent Services? User Agent (UA) Services - Provide template for user to compose a message - Reads incoming messages - Allows a user to reply to m

What is the client side of applications, What is the client side of applica...

What is the client side of applications To build the client side of applications, developers use various tools. Some of the popular software development environments include Vi

Show the network layer in an internetwork, Q. Show the Network layer in an ...

Q. Show the Network layer in an internetwork? - Receives data from Transport layer - Responsible for creating Packet - Each packet contains - Universal Address of Sour

Show the crc-performance, Q. Show the CRC-Performance ? CRC-Performanc...

Q. Show the CRC-Performance ? CRC-Performance CRC is able to detect all burst errors that affect an odd number of bits CRC is able to detect all burst errors of

What is structured query langauge (sql), SQL is a powerful set-oriented lan...

SQL is a powerful set-oriented language which was developed by IBM research for the databases that adhere to the relational model. It having of a short list of powerful, yet highly

Fiber modems, FIBER MODEMS: LAN methods are discovered to perform with...

FIBER MODEMS: LAN methods are discovered to perform within the same building. However most institutions have offices located far apart from one other. DISTANCE LIMITATION A

What is workstation, What is workstation? A workstation is a node in ne...

What is workstation? A workstation is a node in network that is more useful and can occur local information processing or graphics processing. A workstation generally has an in

Determine the working of communications intranet, Determine the working of ...

Determine the working of Communications Intranet Intranets of this type tend to feature in geographically dispersed organisations. The motivation for its implementation is g

What are proxy server, What are proxy servers and how do they protect compu...

What are proxy servers and how do they protect computer networks? Proxy servers primarily stop external users who identifying the IP addresses of an internal network. Without i

Advantages and disadvantage of computer networking , Advantages and Disadva...

Advantages and Disadvantage of Computer Networking Most of the benefits  of networking  can be  divided into  two  generic categories Connectivity and  sharing. Networks

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