EENG449/Savvides Lec 1.1 1/11/05 2005s/eeng449b January 11, 2005 Prof. Andreas Savvides Spring 2005 Location ML.

Slides:



Advertisements
Similar presentations
CS1104: Computer Organisation School of Computing National University of Singapore.
Advertisements

Computer Abstractions and Technology
TU/e Processor Design 5Z032 1 Processor Design 5Z032 The role of Performance Henk Corporaal Eindhoven University of Technology 2009.
Ch1. Fundamentals of Computer Design 3. Principles (5) ECE562/468 Advanced Computer Architecture Prof. Honggang Wang ECE Department University of Massachusetts.
CIS629 Fall Lecture Performance Overview Execution time is the best measure of performance: simple, intuitive, straightforward. Two important.
CIS429.S00: Lec2- 1 Performance Overview Execution time is the best measure of performance: simple, intuitive, straightforward. Two important quantitative.
ECE 232 L2 Basics.1 Adapted from Patterson 97 ©UCBCopyright 1998 Morgan Kaufmann Publishers ECE 232 Hardware Organization and Design Lecture 2 Computer.
1 Introduction Background: CS 3810 or equivalent, based on Hennessy and Patterson’s Computer Organization and Design Text for CS/EE 6810: Hennessy and.
EET 4250: Chapter 1 Performance Measurement, Instruction Count & CPI Acknowledgements: Some slides and lecture notes for this course adapted from Prof.
Chapter 4 Assessing and Understanding Performance
CS / Schlesinger Lec1.1 1/20/99©UCB Spring 1999 Computer Architecture Lecture 1 Introduction and Five Components of a Computer Spring, 1999 Arie Schlesinger.
1 Introduction Background: CS 3810 or equivalent, based on Hennessy and Patterson’s Computer Organization and Design Text for CS/EE 6810: Hennessy and.
CS430 – Computer Architecture Lecture - Introduction to Performance
CIS429/529 Winter 07 - Performance - 1 Performance Overview Execution time is the best measure of performance: simple, intuitive, straightforward. Two.
1 Chapter 4. 2 Measure, Report, and Summarize Make intelligent choices See through the marketing hype Key to understanding underlying organizational motivation.
ECE 232 L1 Intro.1 Adapted from Patterson 97 ©UCBCopyright 1998 Morgan Kaufmann Publishers ECE 232 Hardware Organization and Design Lecture 1 Introduction.
Chapter 1 Sections 1.1 – 1.3 Dr. Iyad F. Jafar Introduction.
Introduction to Computer Architecture SCHOOL OF ELECTRICAL AND COMPUTER ENGINEERING SUMMER 2015 RAMYAR SAEEDI.
COM181 Computer Hardware Ian McCrumRoom 5B18,
CMSC 611: Advanced Computer Architecture Performance Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted.
1 Instant replay  The semester was split into roughly four parts. —The 1st quarter covered instruction set architectures—the connection between software.
CPU Performance Assessment As-Bahiya Abu-Samra *Moore’s Law *Clock Speed *Instruction Execution Rate - MIPS - MFLOPS *SPEC Speed Metric *Amdahl’s.
Lecture 2: Technology Trends and Performance Evaluation Performance definition, benchmark, summarizing performance, Amdahl’s law, and CPI.
ECE 4436ECE 5367 Introduction to Computer Architecture and Design Ji Chen Section : T TH 1:00PM – 2:30PM Prerequisites: ECE 4436.
Where Has This Performance Improvement Come From? Technology –More transistors per chip –Faster logic Machine Organization/Implementation –Deeper pipelines.
Gary MarsdenSlide 1University of Cape Town Computer Architecture – Introduction Andrew Hutchinson & Gary Marsden (me) ( ) 2005.
Lecture 2: Computer Performance
EET 4250: Chapter 1 Computer Abstractions and Technology Acknowledgements: Some slides and lecture notes for this course adapted from Prof. Mary Jane Irwin.
Multi-core Programming Introduction Topics. Topics General Ideas Moore’s Law Amdahl's Law Processes and Threads Concurrency vs. Parallelism.
Computers organization & Assembly Language Chapter 0 INTRODUCTION TO COMPUTING Basic Concepts.
Sogang University Advanced Computing System Chap 1. Computer Architecture Hyuk-Jun Lee, PhD Dept. of Computer Science and Engineering Sogang University.
CS/ECE 3330 Computer Architecture Kim Hazelwood Fall 2009.
1 Recap (from Previous Lecture). 2 Computer Architecture Computer Architecture involves 3 inter- related components – Instruction set architecture (ISA):
C OMPUTER O RGANIZATION AND D ESIGN The Hardware/Software Interface 5 th Edition Chapter 1 Computer Abstractions and Technology Sections 1.5 – 1.11.
(1) ECE 3056: Architecture, Concurrency and Energy in Computation Lecture Notes by MKP and Sudhakar Yalamanchili Sudhakar Yalamanchili (Some small modifications.
1 CS/EE 362 Hardware Fundamentals Lecture 9 (Chapter 2: Hennessy and Patterson) Winter Quarter 1998 Chris Myers.
Advanced Computer Architecture Fundamental of Computer Design Instruction Set Principles and Examples Pipelining:Basic and Intermediate Concepts Memory.
Computer Organization and Design Computer Abstractions and Technology
EEL5708/Bölöni Lec 4.1 Fall 2004 September 10, 2004 Lotzi Bölöni EEL 5708 High Performance Computer Architecture Review: Memory Hierarchy.
1 CS/COE0447 Computer Organization & Assembly Language CHAPTER 4 Assessing and Understanding Performance.
Chapter 1 Computer Abstractions and Technology. Chapter 1 — Computer Abstractions and Technology — 2 The Computer Revolution Progress in computer technology.
Computer Organization & Assembly Language © by DR. M. Amer.
Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
CEN 316 Computer Organization and Design Assessing and Understanding Performance Mansour AL Zuair.
Computer Architecture CPSC 350
CS252/Patterson Lec 1.1 1/17/01 CMPUT429/CMPE382 Winter 2001 Topic2: Technology Trend and Cost/Performance (Adapted from David A. Patterson’s CS252 lecture.
EEL5708/Bölöni Lec 1.1 August 21, 2006 Lotzi Bölöni Fall 2006 EEL 5708 High Performance Computer Architecture Lecture 1 Introduction.
Cost and Performance.
Morgan Kaufmann Publishers
Performance Performance
EEL5708/Bölöni Lec 2.1 Fall 2004 August 27, 2004 Lotzi Bölöni Fall 2004 EEL 5708 High Performance Computer Architecture Lecture 2 Introduction: the big.
Lec2.1 Computer Architecture Chapter 2 The Role of Performance.
Computer Organization Yasser F. O. Mohammad 1. 2 Lecture 1: Introduction Today’s topics:  Why computer organization is important  Logistics  Modern.
Jan. 5, 2000Systems Architecture II1 Machine Organization (CS 570) Lecture 2: Performance Evaluation and Benchmarking * Jeremy R. Johnson Wed. Oct. 4,
EEL-4713 Ann Gordon-Ross.1 EEL-4713 Computer Architecture Performance.
VU-Advanced Computer Architecture Lecture 1-Introduction 1 Advanced Computer Architecture CS 704 Advanced Computer Architecture Lecture 1.
June 20, 2001Systems Architecture II1 Systems Architecture II (CS ) Lecture 1: Performance Evaluation and Benchmarking * Jeremy R. Johnson Wed.
Measuring Performance II and Logic Design
Lecture 2: Performance Evaluation
Performance Lecture notes from MKP, H. H. Lee and S. Yalamanchili.
How do we evaluate computer architectures?
Ch1. Fundamentals of Computer Design 3. Principles (5)
Morgan Kaufmann Publishers
COSC 3406: Computer Organization
Computer Architecture CSCE 350
CMSC 611: Advanced Computer Architecture
Chapter 1 Introduction.
Computer Evolution and Performance
COMS 361 Computer Organization
CMSC 611: Advanced Computer Architecture
Presentation transcript:

EENG449/Savvides Lec 1.1 1/11/ s/eeng449b January 11, 2005 Prof. Andreas Savvides Spring 2005 Location ML 211 EENG 449b/CPSC 439bG Computer Systems Lecture 1 Introduction

EENG449/Savvides Lec 1.2 1/11/05 Outline Why take this class? Trends in Computer Architecture Course Structure Administrative Issues Performance Evaluation Summary

EENG449/Savvides Lec 1.3 1/11/05 Why take this class? To design the next great instruction set?...well... –instruction set architecture has largely converged –especially in the desktop / server / laptop space –dictated by powerful market forces Tremendous organizational innovation relative to established ISA abstractions Many New instruction sets or equivalent –embedded space, controllers, specialized devices,... Design, analysis, implementation concepts vital to all aspects of EE & CS –systems, PL, theory, circuit design, VLSI, comm. Equip you with an intellectual toolbox for dealing with a host of systems design challenges

EENG449/Savvides Lec 1.4 1/11/05 What is the focus of this class? Cover the basic underlying principles of computer architecture –What’s inside a microprocessor –How memories and storage systems work Develop a broader view of computer systems design, not only based on CPU design, but also –How software and hardware come together in tiny networked devices –Explored with a selection of research papers and class projects

EENG449/Savvides Lec 1.5 1/11/05 Example Hot Developments ca Manipulating the instruction set abstraction –itanium: translate ISA64 -> micro-op sequences –transmeta: continuous dynamic translation of IA32 –tinsilica: synthesize the ISA from the application –reconfigurable HW Virtualization –vmware: emulate full virtual machine –JIT: compile to abstract virtual machine, dynamically compile to host Parallelism –wide issue, dynamic instruction scheduling, EPIC –multithreading (SMT) –chip multiprocessors Communication –network processors, network interfaces –Sensor nodes and sensor networks Exotic explorations –nanotechnology, quantum computing

EENG449/Savvides Lec 1.6 1/11/05 Forces on Computer Architecture Computer Architecture Technology Programming Languages Operating Systems History Applications

EENG449/Savvides Lec 1.7 1/11/05 Technology Trends Clock Rate: ~30% per year Transistor Density: ~35% Chip Area: ~15% Transistors per chip: ~55% Total Performance Capability: ~100%

EENG449/Savvides Lec 1.8 1/11/05 Moore’s Law Gordon Moore (1965): The number of transistors per integrated circuit doubles every couple of years Intel: This trend will continue at least until the end of this decade… (Obtained from Intel)

EENG449/Savvides Lec 1.9 1/11/05 A take on Moore’s Law

EENG449/Savvides Lec /11/05 Architecture in the New Millenium Today computer architecture is becoming important in new ways Desktops, notebooks and PDAs are everywhere Micro-controllers are growing the fastest rate –Embedded processors in many new devices »PDAs, remote controls, wireless devices, wireless sensors –A new set of trends for embedded systems »Cost, power and networking are becoming key drivers »Peripherals are becoming equally important to the core »Memories (FLASH and RAM) in the same package next to processor core

EENG449/Savvides Lec /11/05 Measurement and Evaluation Architecture is an iterative process -- searching the space of possible designs -- at all levels of computer systems Good Ideas Mediocre Ideas Bad Ideas Cost / Performance Analysis Design Analysis Creativity

EENG449/Savvides Lec /11/05 What is “Computer Architecture”? I/O systemInstr. Set Proc. Compiler Operating System Application Digital Design Circuit Design Instruction Set Architecture Firmware Coordination of many levels of abstraction Under a rapidly changing set of forces Design, Measurement, and Evaluation Datapath & Control Layout

EENG449/Savvides Lec /11/05 Coping with this class Students with too varied background? –Undergraduate students take this as a first course in architecture (need to have EENG 348a, CPSC 323a, and programming experience in a high-level language) –Graduate students – use this class to transition to grad school and to start your research –Complete the class questionnaire Week 1 Introduction and Performance –Chapter 1 of textbook available online from MKP website Look under sample chapters section Required Text: Computer Architecture A Quantitative Approach by John Hennesy and David Patterson, 3 rd edition –You can order this online from Amazon, Barnes and Noble, or other online bookstores

EENG449/Savvides Lec /11/05 Course Overview Introduction and Performance Evaluation (Chapter 1) Memory Hierarchy (Chapter 5) Instruction Sets (Chapter 2) Instruction Level Parallelism (ILP) (Appendix A & Chapter 3 Exploiting ILP in Software (Chapter 5) Not all the material from the chapters will be covered! I will tell you in class what to focus on In addition to the traditional microprocessor architecture topics this class will also examine other aspects affecting computer architecture such as networks of embedded devices and low power design issues –Handouts will be distributed in class Some of the chapters will be partially covered and supplementary material for other topics will be distributed in class.

EENG449/Savvides Lec /11/05 EENG449/CMSC439 Administrivia TA: Dimitrios Lymberopoulos Assignment information, lectures via WWW page: Lab: CO-40 2 Quizzes: Feb 22 and April 12, 2005 Projects: –Your success largely depends on your own initiative –A list of projects will be discussed in class next week –You are encouraged to pick your own project »Should exercise the concept learned in class –Work in groups of 2 (groups of 1 require my approval)

EENG449/Savvides Lec /11/05 Grading 20% Homeworks 40% Examinations (2 Midterms) 30% Project Draft of Conference Quality Paper –pick topic –meet 3 times with faculty/TA to see progress –give oral presentation in class during last week of classes –written report like conference paper –Opportunity to do “research in the small” to help make transition from good student to research colleague 10% Class Participation

EENG449/Savvides Lec /11/05 Review of Performance

EENG449/Savvides Lec /11/05 Which is faster? Time to run the task (ExTime) –Execution time, response time, latency Tasks per day, hour, week, sec, ns … (Performance) –Throughput (total work done in a given time), bandwidth Plane Boeing 747 Concorde Speed 610 mph 1350 mph DC to Paris 6.5 hours 3 hours Passengers Throughput (pmph) 286, ,200

EENG449/Savvides Lec /11/05 Performance(X) Execution_time(X) n == Performance(Y) Execution_time(Y) Definitions Performance is in units of things per sec –bigger is better If we are primarily concerned with response time –performance(x) = 1 execution_time(x) " X is n times faster than Y" means

EENG449/Savvides Lec /11/05 Computer Performance CPU time= Seconds = Instructions x Cycles x Seconds Program Program Instruction Cycle CPU time= Seconds = Instructions x Cycles x Seconds Program Program Instruction Cycle Inst Count CPIClock Rate Program X Compiler X (X) Inst. Set. X X Organization X X Technology X inst count CPI Cycle time

EENG449/Savvides Lec /11/05 Cycles Per Instruction (Throughput) CPI = (CPU Time * Clock Rate) / Instruction Count = Cycles / Instruction Count “Average Cycles per Instruction” (e.g 1 GHz)(e.g 5 secs) (time for 1 clock tick) CPU Clock Cycles

EENG449/Savvides Lec /11/05 Calculating the Overall CPI Example: A program has 25% FP instructions with average CPI = 4.0 Average CPI of other instructions = 1.33

EENG449/Savvides Lec /11/05 Example: Calculating CPI bottom up Typical Mix of instruction types in program Base Machine (Reg / Reg) OpFreqCyclesCPI(i)(% Time) ALU50%1.5(33%) Load20%2.4(27%) Store10%2.2(13%) Branch20%2.4(27%) 1.5

EENG449/Savvides Lec /11/05 Amhdal’s Law Defines the speedup that can be gained by an improvement in a particular feature Speedup computed based on 2 factors –Fraction of computation time that can leverage the enhancement –Improvement on the overall task by this enhancement

EENG449/Savvides Lec /11/05 Amdahl’s Law (cont.) Fraction of the task that can use the enhancement Improvement offered By the enhancement

EENG449/Savvides Lec /11/05 Leveraging Parallelism Parallelism is a recurring theme for improving performance At the machine level – multiple processors, multiple disks At the processor level –Pipelining – overlapping instruction execution During digital design –Set associative caches with multiple banks –ALUs use carry lookahead »Compute 2 outcomes followed by late selection

EENG449/Savvides Lec /11/05 Price-Performance Metrics Workstations vs. Embedded Processors In desktops performance is typically measured with a set of benchmark programs (SPEC CINT2000 and SPEC CFP2000) –Influenced by a variety of different factors »Memories, peripherals, operating systems etc. In embedded systems processors are harder to compare –Embedded processors are application specific »Features: on-chip peripherals, on-chip memories –Price and power consumption are also decisive factors »Many electronic devices need to operate on batteries, be small and low cost »Processor performance may be of secondary importance in many applications (e.g your mp3 player does not require Pentium type performance but you want it to be cheap and last long hours)

EENG449/Savvides Lec /11/05 Summary Modern Computer Architecture is about managing and optimizing across several levels of abstraction wrt dramatically changing technology and application load Key Abstractions –instruction set architecture –memory –bus Key concepts –HW/SW boundary –Compile Time / Run Time –Pipelining –Caching Performance Iron Triangle relates combined effects –Total Time = Inst. Count x CPI x Cycle Time

EENG449/Savvides Lec /11/05 Reading for Week 1 Chapter 1 of textbook –Available at For course information and updates visit the class website at 9b