SLIDE 4 4
A given program will require:
- some number of instructions (machine instructions)
- some number of cycles
- some number of seconds
We have a vocabulary that relates these quantities:
- cycle time (seconds per cycle)
- clock rate (cycles per second)
- CPI (cycles per instruction)
A a floating point intensive application might have a higher CPI
MIPS (millions of instructions per second) this would be higher for a program using simple instructions.
Determinates of CPU Performance
CPU time = Instruction_count x CPI x clock_cycle
Algorithm Technology Processor
ISA Compiler Programming language clock_cycle CPI Instruction_ count X X X X X X X X X X X X It is the portion of the computer visible to the programmer/compiler such as registers, instructions and memory access. In some sense, the instruction set architecture is defined by the set of assembly instructions that can be used and by what they do. The Instruction Set Architecture, or ISA, of a computer is the interface between the software and the hardware.
Summary: Evaluating ISAs
Design-time metrics:
Can it be implemented, in how long, at what cost? Can it be programmed? Ease of compilation?
Static Metrics:
How many bytes does the program occupy in memory?
Dynamic Metrics:
How many instructions are executed? How many bytes does the
processor fetch to execute the program?
How many clocks are required per instruction? How "lean" a clock is practical?
Best Metric: Time to execute the program!
CPI
Cycle Time
depends on the instructions set, the processor organization, and compilation techniques.
Most “popular” instructions?
4% Other 1% Return 1% Call 4% Move register-register 5% Sub 6% And 8% Add 12% Store 16% Compare 20% Conditional branch 22% Load
10 simple instructions account for 96% of all instructions should make sure that they go fast because they are the common case. It is dubious that it’s worth implementing many other sophisticated functions
In this 1984 photograph, Stanford computer scientists, left to right, John Shott, John Hennessy and James D. Meindl brainstorm about the MIPS project, which simplified computing with RISC architecture. Photo: Chuck Painter.
Reduced Instruction Set Computer (RISC). A type of microprocessor architecture that utilizes a small, highly-optimized set of instructions, rather than a more specialized set of instructions often found in other types of architectures. By reducing the number of transistors and instructions to only those most frequently used, the computer would get more done in a shorter amount of time.