Recap Measuring and reporting performance Quantitative principles Performance vs Cost/Performance.

Slides:



Advertisements
Similar presentations
CPU Structure and Function
Advertisements

Instruction Set Design
Chapter 3 Instruction Set Architecture Advanced Computer Architecture COE 501.
CEG3420 Lec2.1 ©UCB Fall 1997 ISA Review CEG3420 Computer Design Lecture 2.
1 Instruction Set Principles and Examples 游象甫. 2 Outline Introduction Classifying instruction set architectures Memory addressing Type and size of operands.
1 Lecture 3: Instruction Set Architecture ISA types, register usage, memory addressing, endian and alignment, quantitative evaluation.
EECC551 - Shaaban #1 Lec # 2 Fall Instruction Set Architecture (ISA) “... the attributes of a [computing] system as seen by the programmer,
RISC / CISC Architecture By: Ramtin Raji Kermani Ramtin Raji Kermani Rayan Arasteh Rayan Arasteh An Introduction to Professor: Mr. Khayami Mr. Khayami.
INSTRUCTION SET ARCHITECTURES
Instruction Set Architecture Classification According to the type of internal storage in a processor the basic types are Stack Accumulator General Purpose.
3.13. Fallacies and Pitfalls Fallacy: Processors with lower CPIs will always be faster Fallacy: Processors with faster clock rates will always be faster.
COMP381 by M. Hamdi 1 Instruction Set Architectures.
Classifying Instruction Set Architectures
RISC By Don Nichols. Contents Introduction History Problems with CISC RISC Philosophy Early RISC Modern RISC.
State Machines Timing Computer Bus Computer Performance Instruction Set Architectures RISC / CISC Machines.
CH11 Instruction Sets: Addressing Modes and Formats
CIS 314 : Computer Organization Lecture 1 – Introduction.
Classifying Instruction Set Architectures
Appendix A Pipelining: Basic and Intermediate Concepts
Unit -II CPU Organization By- Mr. S. S. Hire. CPU organization.
1 Lecture 3: Instruction Sets Section 1.3, Sections Technology trends Design issues in defining an instruction set  Register and memory access.
Instruction Sets and Pipelining Cover basics of instruction set types and fundamental ideas of pipelining Later in the course we will go into more depth.
Gary MarsdenSlide 1University of Cape Town Computer Architecture – Introduction Andrew Hutchinson & Gary Marsden (me) ( ) 2005.
Instruction Set Architecture
1 Appendix B Classifying Instruction Set Architecture Memory addressing mode Operations in the instruction set Control flow instructions Instruction format.
Recap Technology trends Cost/performance Measuring and Reporting Performance What does it mean to say “computer X is faster than computer Y”? E.g. Machine.
Classifying GPR Machines TypeNumber of Operands Memory Operands Examples Register- Register 30 SPARC, MIPS, etc. Register- Memory 21 Intel 80x86, Motorola.
Hardware Support for Compiler Speculation
2015/10/22\course\cpeg323-08F\Final-Review F.ppt1 Midterm Review Introduction to Computer Systems Engineering (CPEG 323)
1 (Based on text: David A. Patterson & John L. Hennessy, Computer Organization and Design: The Hardware/Software Interface, 3 rd Ed., Morgan Kaufmann,
CS1104 – Computer Organization PART 2: Computer Architecture Lecture 12 Overview and Concluding Remarks.
Advanced Computer Architecture Fundamental of Computer Design Instruction Set Principles and Examples Pipelining:Basic and Intermediate Concepts Memory.
Chapter 5 A Closer Look at Instruction Set Architectures.
Chapter 5 A Closer Look at Instruction Set Architectures.
Instruction Set Architecture The portion of the machine visible to the programmer Issues: Internal storage model Addressing modes Operations Operands Encoding.
Chapter 2 Instructions: Language of the Computer Part I.
Ted Pedersen – CS 3011 – Chapter 10 1 A brief history of computer architectures CISC – complex instruction set computing –Intel x86, VAX –Evolved from.
Oct. 25, 2000Systems Architecture I1 Systems Architecture I (CS ) Lecture 9: Alternative Instruction Sets * Jeremy R. Johnson Wed. Oct. 25, 2000.
Crosscutting Issues: The Rôle of Compilers Architects must be aware of current compiler technology Compiler Architecture.
Computer Organization
ECEG-3202 Computer Architecture and Organization Chapter 7 Reduced Instruction Set Computers.
Csci 136 Computer Architecture II – Summary of MIPS ISA Xiuzhen Cheng
Lecture 04: Instruction Set Principles Kai Bu
Chapter 11 Instruction Sets: Addressing Modes and Formats Gabriel Baron Sydney Chow.
CS 211: Computer Architecture Lecture 2 Instructor: Morris Lancaster.
Instruction Sets: Addressing modes and Formats Group #4  Eloy Reyes  Rafael Arevalo  Julio Hernandez  Humood Aljassar Computer Design EEL 4709c Prof:
Lecture 5 A Closer Look at Instruction Set Architectures Lecture Duration: 2 Hours.
Recap Multicycle Operations –MIPS Floating Point Putting It All Together: the MIPS R4000 Pipeline.
Addressing Modes and Formats
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO CS 219 Computer Organization.
DR. SIMING LIU SPRING 2016 COMPUTER SCIENCE AND ENGINEERING UNIVERSITY OF NEVADA, RENO Session 7, 8 Instruction Set Architecture.
Jan. 5, 2000Systems Architecture II1 Machine Organization (CS 570) Lecture 2: Performance Evaluation and Benchmarking * Jeremy R. Johnson Wed. Oct. 4,
June 20, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 1: Performance Evaluation and Benchmarking * Jeremy R. Johnson Wed.
Computer Architecture & Operations I
Computer Architecture & Operations I
Overview of Instruction Set Architectures
Immediate Addressing Mode
A Closer Look at Instruction Set Architectures
Alvaro Mauricio Peña Dariusz Niworowski Frank Rodriguez
A Closer Look at Instruction Set Architectures
Chapter 1 Fundamentals of Computer Design
Computer Architecture
Introduction to Computer Systems Engineering
Classification of instructions
A Closer Look at Instruction Set Architectures Chapter 5
Instruction Set Principles
Dr Hao Zheng Computer Sci. & Eng. U of South Florida
Presentation transcript:

Recap Measuring and reporting performance Quantitative principles Performance vs Cost/Performance

Fallacies and Pitfalls Fallacy: Peak performance tracks observed performance –Gap is often huge –E.g. Hitachi supercomputer 2 times faster than Cray (peak), but Cray is 2 times faster (real life!) –DEC Alpha: reported peak performance (assuming perfect pipeline and superscalar execution!) –Often used in supercomputer industry –Still a bad idea!

Fallacies and Pitfalls Fallacy: Best design optimises the primary objective without considering implementation –Complex designs impact time to market, affecting competitiveness –E.g. Intel Itanium — two year delay!

Fallacies and Pitfalls Pitfall: Ignoring software costs –Hardware costs used to dominate, but software is now a significant cost factor (e.g. 50% for a midrange server) –Impacts on cost-performance

Fallacies and Pitfalls Pitfall: Falling prey to Amdahl’s Law –Easy to get side-tracked into optimising some area that will have little overall impact

Fallacies and Pitfalls Fallacy: Synthetic benchmarks predict real performance (since 1 st Edition!) –Benchmarks are very susceptible to compiler and hardware optimisations –Examples: Compilers can discard 25% of Dhrystone! Whetstone doesn’t allow for some common, real optimisations! Compilers do benchmark-specific optimisations!

Fallacies and Pitfalls Fallacy: MIPS is useful for performance comparison (also 1 st Edition!) –Still popular (embedded processors) –MIPS depends on instruction set (useless for comparing different architectures) –MIPS varies between programs –MIPS can vary inversely to performance! E.g. FP in hardware/software

Chapter 1: Concluding Comments Several concepts that will be explored in more detail Chapter 2: Instruction set architecture Chapters 3 & 4: Pipelining –Appendix A: Basics –Chapter 3: Hardware techniques –Chapter 4: Compiler techniques Chapter 5: Memory hierarchies

Historical Perspectives Early computer history History of performance measurement –Details of Whetstone, MIPS, SPEC, etc.

Chapter Two Instruction Set Principles and Examples EDSAC Instruction Set

Contents Classification of architectures Features that are relatively independent of instruction sets “Different” Processors –DSP and media processors Impact of compilers

Introduction Use real programs for measurement –Results depend on programs and compilers used, but should be representative –Designers would consider much larger sets of programs Measurements are usually dynamic

2.2. Classification of Instruction Set Architectures Major criterion: CPU operand storage Four main styles of architecture: –Stack –Accumulator –General-purpose register machines Register-Memory Register-Register (or load-store) Operands are implicit Acc. implicit/Other explicit Operands explicit

Popularity Early machines: –Stack and accumulator Since 1980’s: –General register, load-store machines

Advantages of Registers Fast! Easier for compilers to use and optimise Can hold variables –Reduces memory traffic –Increases performance –Decreases program size –Dedicated registers frustrate these goals

Classifying GPR Machines Number of operands –Two or three Number of operands that may be in memory –0…3

Classifying GPR Machines TypeNumber of Operands Memory Operands Examples Register- Register 30 SPARC, MIPS, etc. Register- Memory 21 Intel 80x86, Motorola Memory- Memory 33VAX

2.3. Memory Addressing How is data accessed? How is a memory address interpreted? –Big-/Little-Endian ordering Generally unnoticed, except when exchanging data Alignment –Some machines insist on alignment (e.g. SPARC) –Other machines require multiple memory accesses for unaligned data

Data Addressing Modes Ten common addressing modes –Register –Immediate –Displacement –Register indirect –Indexed –Direct (or absolute) –Memory indirect –Autoincrement/Autodecrement –Scaled SPARC

Usage of Addressing Modes Measurements based on VAX –TeX, Spice, gcc Immediate and Displacement addressing dominate

Fig 2.7

Displacement Addressing Mode Wide variation in displacement (offset) values (Alpha, using SPEC2000)

Immediate Addressing Mode Mainly used for comparisons and ALU ops Overall (Alpha): –21% of instructions (integer) –16% of instructions (fp) Range of values (Alpha): –Mainly small ( 12 bits)

Figure 2.10