Performance and issues in pipelining-throughput, Computer Engineering

Assignment Help:

Performance and Issues in Pipelining

Throughput: Throughput of a pipeline can be defined as the number of results that have been getting per unit time. It can be denoted as:

                                                   T = n / [m + (n-1)]. c = E / c

Throughput signifies the computing power of the pipeline.

Maximum speed up, throughput and efficiency are the perfect cases but these are not achieved in the useful cases, as the speedup is limited due to the many factors:

  • Data dependency between successive tasks:There might be dependencies among the instructions of two tasks used in the pipeline. For example, one instruction cannot be going ahead until the previous instruction returns the results, as both are interdependent. One more instance of data dependency will be when that both instructions try to modify the similar data object. These are known as data hazards.
  • Resource Constraints: When resources are not available at the time of implementation then delays are caused in pipelining. For example, if single common memory is used for both instructions and data and there is require to read/write and fetch the instruction at the similar time then only one can be carried out and the other has to stay. One more example is of limited resource like implementation unit, which may be busy at the required time.
  • Branch Instructions and Interrupts in the program:A program is not a directly flow of sequential instructions. There may be branch instructions that modify the normal flow of program, which delays the pipelining implementation and affects the performance. Likewise, there are interrupts that postpones the implementation of next instruction until the interrupt has been serviced. Interrupt and the Branches have harmful effects on the pipelining.

Related Discussions:- Performance and issues in pipelining-throughput

Determine about the verilog task, Determine about the Verilog Task - Ta...

Determine about the Verilog Task - Tasks are capable of enabling a function as well as enabling other versions of a Task. - Tasks also run with a zero simulation however the

What is pipelining, What is pipelining? The overlapping of implementati...

What is pipelining? The overlapping of implementation of successive instructions is known as pipelining.

What are the functions of virtual file system, What are the functions of vi...

What are the functions of virtual file system (VFS)? a. It splits file-system-generic operations from their implementation explaining a clean VFS interface. It allows transpare

user to enter the weight, A red and blue car were involved in a head-on co...

A red and blue car were involved in a head-on collision. The red car was at a standstill and the blue car was possibly  speeding. Eye witness video recorded suddenly following the

What is elapsed time of computer system, What is elapsed time of computer s...

What is elapsed time of computer system? The total time to implement the total program is known as elapsed time. It is affected by the speed of the processor, the disk and the

Posix threads and mutex, The objective of this practical assignment is to u...

The objective of this practical assignment is to use the POSIX environment to write a program that simulates the supply and demand between three processes: warehouse, factory and r

Multiple assign statements targeting the same wire, What logic is inferred ...

What logic is inferred when there are multiple assign statements targeting the same wire? It's illegal to specify multiple assign statements to the same wire in a synthesizable

Vliw instruction word, VLIW instruction word is compacted to have floating-...

VLIW instruction word is compacted to have floating-point addition, one branch, floating point multiply, and one integer arithmetic and load/store operation as displayed in Figure

Homework, Use linear activation function and Hebbian learning for a SLFF ne...

Use linear activation function and Hebbian learning for a SLFF network to attempt to learn the following two sets of patterns. Why can the patterns be learned, or why can they not

What are the fundamental steps in program development, What are the fundame...

What are the fundamental steps in program development The basic steps in program development are as follows: a. Program coding, design and documentation. b. Preparation o

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