Registers - processor, Computer Engineering

These will be independent of each other and will not affect to each other, and so they can be fed into two different implementations units and run in parallel. The ability to remove instruction level parallelism (ILP) from the instruction stream is necessary for good performance in a modern CPU.

Predicting which code can and cannot be divide up this way is a very difficult task. In many cases the inputs to one line are dependent on the output from a different, but only if some other condition is true. For instance, take the slight modification of the example noted before, A = B + C; IF A==5 THEN D = F + G. In this case the calculations stay independent of the other, but the second command needs the results from the first calculation in order to know if it should be run at all.

In these cases the circuitry on the CPU typically "guesses" what the condition will be. In something like 90% of all cases, an IF will be taken, suggesting that in our example the second half of the command can be safely fed into another core. Though, getting the guess wrong can cause a significant performance hit when the result has to be thrown out and the CPU waits for the results of the "right" command to be calculated. Much of the improving performance of modern CPUs is due to enhanced prediction logic, but lately the improvements have started to slow. Branch prediction accuracy has arrived at figures in excess of 98% in recent Intel architectures, and enhancing this figure can only be achieved by devoting more CPU die space to the branch predictor, a self-defeating tactic because it would make the CPU more expensive to manufacture.

Posted Date: 3/5/2013 5:42:14 AM | Location : United States

Related Discussions:- Registers - processor, Assignment Help, Ask Question on Registers - processor, Get Answer, Expert's Help, Registers - processor Discussions

Write discussion on Registers - processor
Your posts are moderated
Related Questions

Draw the circuit diagram of Asynchronous decade counter and explain its working. Ans: To  design  a  circuit diagram of decade  asynchronous  counter  initially  we  dr

What is non-repudiation? Non Repudiation: Assurance that the sender is given with proof of delivery and that the recipient is provided with proof of the sender's identity so th

What are the simplest way to restrict the users The simplest way to restrict the users to peek inside the internals of the Web site is to use firewalls, where the information c

Explain the Advantages of High Level Languages? The major advantage of high-level languages over low-level languages is that they are easier to write, read, and maintain. Ultim

This is the set of tools and facilities that you work with as the MATLAB user or programmer. It contains facilities for managing the variables in your workspace and importing and e

Associativity of Connectives: In order to tell us brackets are useful when to perform calculations in arithmetic and when to evaluate the truth of sentences in logic. Imagine w

How do you populate data into a multiple line field? To populate data into a multiple line field, an index is added to the field name to show which line is to be populated by t

Task 1:   Methodologies are 'regarded as a recommended series of steps and procedures to be followed in the course of developing an information system' and were introduced to im

Fundamental functional units of a computer: QUE. What are the fundamental functional units of a computer? Ans: A computer consists of 5 functionally independent major parts