Consequences in Machine Architecture
Use of a PC that normally increments assumes that what a computer does is execute a usually linear sequence of instructions. Such a PC (or equivalent hardware that serves the same purpose) is central to the von Neumann architecture. Thus programmers write a sequential control flow even for algorithms that do not have to be sequential. The resulting “von Neumann bottleneck” led to research into parallel computing, including non-von Neumann or dataflow models that did not use a PC; for example, rather than specifying sequential steps, the high-level programmer might specify desired function and the low-level programmer might specify this using combinatory logic.
This research also led to ways to making conventional, PC-based, CPUs run faster, including:
- Pipelining, in which different hardware in the CPU executes different phases of multiple instructions simultaneously.
- The very long instruction word (VLIW) architecture, where a single instruction can achieve multiple effects.
- Techniques to predict out-of-order execution and prepare subsequent instructions for execution outside the regular sequence.
Read more about this topic: Program Counter
Famous quotes containing the words consequences, machine and/or architecture:
“[As teenager], the trauma of near-misses and almost- consequences usually brings us to our senses. We finally come down someplace between our parents safety advice, which underestimates our ability, and our own unreasonable disregard for safety, which is our childlike wish for invulnerability. Our definition of acceptable risk becomes a product of our own experience.”
—Roger Gould (20th century)
“Psychiatric enlightenment has begun to debunk the superstition that to manage a machine you must become a machine, and that to raise masters of the machine you must mechanize the impulses of childhood.”
—Erik H. Erikson (19041994)
“No architecture is so haughty as that which is simple.”
—John Ruskin (18191900)