1 1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and...

8
1 1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and motivation A specific instruction set architecture (Chapter 3) Arithmetic and how to build an ALU (Chapter 4) Constructing a processor to execute our instructions (Chapter 5) Pipelining to improve performance (Chapter 6) Memory: caches and virtual memory (Chapter 7) I/O (Chapter 8)

Transcript of 1 1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and...

Page 1: 1  1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and motivation A specific instruction set architecture.

11998 Morgan Kaufmann Publishers

Where we are headed

• Performance issues (Chapter 2) vocabulary and motivation

• A specific instruction set architecture (Chapter 3)

• Arithmetic and how to build an ALU (Chapter 4)

• Constructing a processor to execute our instructions (Chapter 5)

• Pipelining to improve performance (Chapter 6)

• Memory: caches and virtual memory (Chapter 7)

• I/O (Chapter 8)

Page 2: 1  1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and motivation A specific instruction set architecture.

21998 Morgan Kaufmann Publishers

• 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 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

Now that we understand cycles

Page 3: 1  1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and motivation A specific instruction set architecture.

31998 Morgan Kaufmann Publishers

Performance

• Performance is determined by execution time

• Do any of the other variables equal performance?

– # of cycles to execute program?

– # of instructions in program?

– # of cycles per second?

– average # of cycles per instruction?

– average # of instructions per second?

• Common pitfall: thinking one of the variables is indicative of performance when it really isn’t.

Page 4: 1  1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and motivation A specific instruction set architecture.

41998 Morgan Kaufmann Publishers

• Performance is specific to a particular program/s– Total execution time is a consistent summary of performance

• For a given architecture performance increases come from:– increases in clock rate (without adverse CPI affects)– improvements in processor organization that lower CPI– compiler enhancements that lower CPI and/or instruction count

• Pitfall: expecting improvement in one aspect of a machine’s

performance to affect the total performance

Performance Summary

Page 5: 1  1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and motivation A specific instruction set architecture.

51998 Morgan Kaufmann Publishers

Instruction Set Architecture Summary

• A very important abstraction

– interface between hardware and low-level software

– standardizes instructions, machine language bit patterns, etc.

– advantage: different implementations of the same architecture

– disadvantage: sometimes prevents using new innovations

True or False: Binary compatibility is extraordinarily important?

Page 6: 1  1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and motivation A specific instruction set architecture.

61998 Morgan Kaufmann Publishers

Representation Summary

• Computer arithmetic is constrained by limited precision

• Bit patterns have no inherent meaning but standards do exist

– two’s complement

– IEEE 754 floating point

• Computer instructions determine “meaning” of the bit patterns

• Performance and accuracy are important so there are manycomplexities in real machines (i.e., algorithms and implementation).

Page 7: 1  1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and motivation A specific instruction set architecture.

71998 Morgan Kaufmann Publishers

Some Datapath Issues

• How is control implemented?• What determines cycle length?• How many instructions can execute at one time?

Page 8: 1  1998 Morgan Kaufmann Publishers Where we are headed Performance issues (Chapter 2) vocabulary and motivation A specific instruction set architecture.

81998 Morgan Kaufmann Publishers

Memory

• How are the different levels of memory related?

• What is the principle of locality and how is it related to the memory hierarchy?

• What does a hit/miss mean in:

– TLB?

– Page Table (Virtual memory)?

– Cache?