Explain potential of parallelism, Computer Engineering

Assignment Help:

Potential of Parallelism

Problems in the actual world differ in respect of the amount of inherent parallelism intrinsic in respective problem domain. Some problems can be easily parallelized. Conversely, there are some inherent chronological problems (e.g. computation of Fibonacci sequence) whose parallelization is almost impossible. The extent of parallelism can be enhanced by suitable design of an algorithm to solve the problem consideration. If processes do not share address space and we could get rid of data dependency among instructions, we can attain higher level of parallelism. The idea of speed up is used as a measure of the speed up which indicates up to what extent to which a sequential program can be parallelized.  Speed up can be taken as a sort of amount of inherent parallelism in a program. In that respect, Amdahl has given a law, called Amdahl's Law, according to this law potential program speedup is stated by the fraction of code (P) which can be parallelised:

Speed up= 1 / 1-p

If no part of the code can be parallelized, P = 0 and speedup = 1 it implies that it is an inherently chronological program. If all the code is parallelized then P = 1, the speedup is infinite. However practically, the code in no program is able to make 100% parallel. Therefore speed up cannot be infinite ever.

If 50% of code can be parallelized, maximum speedup = 2, meaning the code would run twice as fast.  

If we set up the number of processors executing the parallel fraction of work, the relationship can be modeled by:

2485_Potential of Parallelism.png

Where P = parallel fraction, N = total number of processors and S = Serial fraction.The Table 1 shows the values of speed up for various values N and P.

1889_Potential of Parallelism 1.png

The Table 1 proposes that speed up increases as P increases. Though, after a certain limits N doesn't have much impact on the value of speed up. The reason being that is for N processors to remain active, the code must be in some way or other, be divisible in more or less N parts, independent part, every part taking almost equal amount of time.


Related Discussions:- Explain potential of parallelism

Fundamental issues of concerns for instruction set design, Q. Fundamental i...

Q. Fundamental issues of concerns for instruction set design? A number of fundamental issues of concerns for instruction set design are: Completeness: For an early design

Illustrate single in-line memory modules, Q. Illustrate Single In-line Memo...

Q. Illustrate Single In-line Memory Modules? From early days of semiconductor memory till the early 1990s memory was manufactured, brought and installed as a single chip. Chip

What is dynamic random access memory, What is dynamic random access memory ...

What is dynamic random access memory Computer memory today comprises mainly of dynamic random access memory (DRAM) chips which have been built into multi-chip modules that are

What is the chief advantage of using virtual packets, What is the chief adv...

What is the chief advantage of using virtual packets instead of frames? The router can't transfer a copy of a frame from one kind of network to another since the frame formats

What is loadrunner, LoadRunner works by making virtual users who take the p...

LoadRunner works by making virtual users who take the place of real users operating client software, such as sending requests using the HTTP protocol to IIS or Apache web servers.

What is a heap dump, Thread Dump: When we trigger a thread dump on an appli...

Thread Dump: When we trigger a thread dump on an application server, all active thread informations will be deserted into file which is called as thread dump. Here, we can get info

Demonstration of sorting problem, Q. Demonstration of sorting problem? ...

Q. Demonstration of sorting problem? The term sorting implies organising elements of a provided set of elements in a specific order i.e. descending order / ascending order / al

Why are binary, Q. Why are binary, octal and hexadecimal used for computer ...

Q. Why are binary, octal and hexadecimal used for computer applications? Q. Perform the following: (189.3) 10 = (?) 2

Object oriented and structured oriented programming, What is the difference...

What is the difference among object oriented and structured oriented programming? Ans) ? Object Oriented means programme will be there in terms of Class and Object connection w

Efficiency of vector processing over scalar processing, Efficiency of Vecto...

Efficiency of Vector Processing over Scalar Processing As we know a serial computer processes single scalar operands at a time. So if we have to process a vector of length 'n'

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