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
How does the Applet update its window when information changes? Whenever an applet requires to update the information displayed in its window, this simply calls repaint ( ) way

Message in C++ : * Objects converse by sending messages to each other. * A message is sent to invoke a method in C++.   Method in C++: * Gives response to a message

Is the TCP checksum necessary? Yes, TCP Checksum is essential. TCP layer is liable for error detection, transmission of packets if needed, error control, reassembly of packe


Q. Explain about data registers? The data registers are used just for storing intermediate results or data and not for operand address calculation. Some dedicated address re

Fred, Barney and Ralph belong to the La Trobe Mountain Club. Every member of the Club is either a skier or a hiker. Anyone that doesn't like snow does not like skiing. No hikers li

How  do  I  prevent  selected  parameters  of  a  module  from  being  overridden  during instantiation? If a specific parameter within a module must be prevented from being ov

What are the central interfaces of the R/3 system? There are three central interfaces:- Presentation Interface. Database Interface. Operating system Interface.

What is sector sparing? Low-level formatting also sets aside spare sectors not visible to the operating system. The controller can be told to change each bad sector logically w

1. Write the function makegrid. This function accepts a width and height and creates a grid/matrix of cells. The width gives the number of columns and the height the number of rows