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

Difference between commit-work and rollback-work tasks, What is the differe...

What is the difference between Commit-work and Rollback-Work tasks? Commit-Work statement "performs" many functions relevant to synchronized execution of tasks.  Rollback-work

Explain simple interfacing, Q. Explain Simple Interfacing? The followin...

Q. Explain Simple Interfacing? The following is a sample of the coding, used for procedure interfacing: PUBLIC CUROFF             _TEXT SEGMENT WORD PUBLIC 'CODE'

The concept of program-parallel computing, The Concept of Process Infor...

The Concept of Process Informally, a method is a program in execution, behind the program has been loaded in the main memory. However, a method is more than just a program code

What is computer virus, What is computer virus?  A  computer  virus  is...

What is computer virus?  A  computer  virus  is  a  computer  program  that  is  designed  to  spread  itself between   computers.   Computer virus are inactive when standing a

Determine the bit value and bitstrings , Testing Your Program All progr...

Testing Your Program All programs must be thoroughly tested before they are released to users. Create some sample input files of a small size and manually figure out what the o

Centres of keycaps, A full size keyboard has distance between centres of ke...

A full size keyboard has distance between centres of keycaps (keys) like 19mm (0.75in).The keycaps have a top of nearly 0.5in (12.5in) that is shaped as a sort of dish to help you

Expalin massively parallel system and scalability, Massively Parallel Syste...

Massively Parallel System Indicates to a "parallel computer system" involving a huge number of processors. The numbers in a huge number of processors keeps increasing and curre

Dynamic address translation - computer architecture, Dynamic address transl...

Dynamic address translation :  If, when executing an instruction, a CPU fetches an instruction located at a specific virtual address, or fetches data from a particular virtual

Modelsim, design a basic computer

design a basic computer

Explain what are design patterns, Design Patterns are easy and elegant solu...

Design Patterns are easy and elegant solutions of commonly having problems in software design. Design Patterns make it simpler to reuse successful designs and architectures of expe

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