CS61C : Machine Structures

Similar documents
CS61C : Machine Structures

CS61C : Machine Structures

CS61C : Machine Structures

CS61C : Machine Structures

CS61C Machine Structures. Lecture 1 Introduction. 8/27/2006 John Wawrzynek (Warzneck)

CS654 Advanced Computer Architecture. Lec 1 - Introduction

CS430 - Computer Architecture William J. Taffe Fall 2002 using slides from. CS61C - Machine Structures Dave Patterson Fall 2000

UC Berkeley CS61C : Machine Structures

CS 61C: Great Ideas in Computer Architecture (Machine Structures) Course Summary

CS61C Machine Structures. Lecture 1 Introduction. 8/25/2003 Brian Harvey. John Wawrzynek (Warznek) www-inst.eecs.berkeley.

Intro to Math 230 Assembly Language Programming. Lecture # 01 01/15/08

Instructors: Randy H. Katz David A. PaHerson hhp://inst.eecs.berkeley.edu/~cs61c/fa10. Fall Lecture #1. Agenda

Agenda. Old School CS61c. Agenda. New School CS61c 8/26/10. CS 61C: Great Ideas in Computer Architecture (Machine Structures)

ECE 15B COMPUTER ORGANIZATION

UC Berkeley CS61C : Machine Structures

UC Berkeley CS61C : Machine Structures

Outline. Lecture 40 Hardware Parallel Computing Thanks to John Lazarro for his CS152 slides inst.eecs.berkeley.

B649 Graduate Computer Architecture. Lec 1 - Introduction

levels (layers) of abstraction I stand on the shoulders of giants Lecture #1 Introduction Are Computers Smart? Where does CS61C fit in?

Lecture #26 Parallelism in Hardware: Processor Design

CS61C C/Assembler Operators and Operands Lecture 2 January 22, 1999 Dave Patterson (http.cs.berkeley.edu/~patterson)

CS61C : Machine Structures

CS 2630 Computer Organization. What did we accomplish in 15 weeks? Brandon Myers University of Iowa

CS61C : Machine Structures

Review: Performance Latency vs. Throughput. Time (seconds/program) is performance measure Instructions Clock cycles Seconds.

Lecture #30 Parallel Computing

CS3350B Computer Architecture. Introduction

UC Berkeley CS61C : Machine Structures

Computer Architecture. R. Poss

CS61C : Machine Structures

Computer Architecture. Fall Dongkun Shin, SKKU

CS61C : Machine Structures

ECE 154A. Architecture. Dmitri Strukov

MOTIVATION. B649 Parallel Architectures and Programming

Lecture 41: Introduction to Reconfigurable Computing

CSE 141: Computer Architecture. Professor: Michael Taylor. UCSD Department of Computer Science & Engineering

ELEC 5200/6200 Computer Architecture and Design Spring 2017 Lecture 1: Introduction

And in Review! ! Locality of reference is a Big Idea! 3. Load Word from 0x !

Technology. Giorgio Richelli

CS 110 Computer Architecture. Lecture 2: Introduction to C, Part I. Instructor: Sören Schwertfeger.

Introduction to Multicore architecture. Tao Zhang Oct. 21, 2010

Computer Architecture

CS61C Machine Structures. Lecture 8 - Introduction to the MIPS Processor and Assembly Language. 9/14/2007 John Wawrzynek

CS 2630 Computer Organization. What did we accomplish in 8 weeks? Brandon Myers University of Iowa

CS61C : Machine Structures

ELEC 5200/6200. Computer Architecture & Design. Victor P. Nelson Broun 326

Computer Architecture

Processor. Lecture #2 Number Rep & Intro to C classic components of all computers Control Datapath Memory Input Output

EECE 321: Computer Organization

CS64 Computer Organization

UC Berkeley CS61C : Machine Structures

Review : Pipelining. Memory Hierarchy

Lecture 1: CS/ECE 3810 Introduction

COS 318: Operating Systems. Introduction

Evolution of Computers & Microprocessors. Dr. Cahit Karakuş

CS61C : Machine Structures

CS61C : Machine Structures

CMSC 611: Advanced Computer Architecture

Computer Architecture!

CS 3410 Computer System Organization and Programming

CPS104 Computer Organization Lecture 1

CS 3410 Computer System Organization and Programming

CS61C : Machine Structures

Multiple Issue ILP Processors. Summary of discussions

CSE 240 Introduction to Computer Architecture

CS61C Machine Structures. Lecture 13 - MIPS Instruction Representation I. 9/26/2007 John Wawrzynek. www-inst.eecs.berkeley.

! CS61C : Machine Structures. Lecture 22 Caches I. !!Instructor Paul Pearce! ITʼS NOW LEGAL TO JAILBREAK YOUR PHONE!

CS61C : Machine Structures

CS61C : Machine Structures

CS61C : Machine Structures

WELCOME TO CS 16! Enrollment status: 117/ Problem Solving with Computers-I

Computer Architecture!

Computer Architecture

Some material adapted from Mohamed Younis, UMBC CMSC 611 Spr 2003 course slides Some material adapted from David Culler, UC Berkeley CS252, Spr 2002

CS61C : Machine Structures

EECS 452 Advanced Computer Architecture - I

CS 61C: Great Ideas in Computer Architecture Intro to Assembly Language, MIPS Intro

CpE 442 Introduction to Computer Architecture. The Role of Performance

Administration. Coursework. Prerequisites. CS 378: Programming for Performance. 4 or 5 programming projects

CS61C : Machine Structures

What is this class all about?

CPS104 Computer Organization Lecture 1. CPS104: Computer Organization. Meat of the Course. Robert Wagner

LECTURE 1. Introduction

CS61C : Machine Structures

UCB CS61C : Machine Structures

CS 110 Computer Architecture. Lecture 2: Introduction to C, Part I. Instructor: Sören Schwertfeger.

CS 61C: Great Ideas in Computer Architecture. Course Introduction, Number Representation

Computer Architecture!

CS 61C: Great Ideas in Computer Architecture. Direct Mapped Caches

IT 252 Computer Organization and Architecture. Introduction. Chia-Chi Teng

UC Berkeley CS61C : Machine Structures

ECE 15B Computer Organization Spring 2011

EE382 Processor Design. Class Objectives

Unit 11: Putting it All Together: Anatomy of the XBox 360 Game Console

What is this class all about?

Administrative matters. EEL-4713C Computer Architecture Lecture 1. Overview. What is this class about?

Computer Architecture

Lecture #6 Intro MIPS; Load & Store

CSE502 Graduate Computer Architecture. Lec 22 Goodbye to Computer Architecture and Review

Lecture 33 Caches III What to do on a write hit? Block Size Tradeoff (1/3) Benefits of Larger Block Size

Transcription:

inst.eecs.berkeley.edu/~cs61c CS61C : Machine Structures Lecture #31 Summary & Goodbye 2007-8-16 Scott Beamer, Instructor Cityware Research Project Connects Bluetooth Users on Facebook CS61C L31 Summary & Goodbye (1) www.bbc.co.uk

Review Parallelism Above the line (software, many machines) and below the line (hardware, multiple cores) both critical for computing s future. Hard to write code that fully takes advantage of all available resources to maximize performance and get fully Nx speedup. Distributed and Parallel computing Synchronization hard, APIs help (MapReduce) Hardware Parallelism Cache coherence makes it difficult to scale! Manycore, not multicore! Berkeley EECS taking initative to make ~1000 core HW, put in researchers hands! CS61C L31 Summary & Goodbye (2)

CS61C: So what's in it for me? (1 st lecture) Learn some of the big ideas in CS & engineering: 5 Classic components of a Computer Principle of abstraction, systems built as layers Data can be anything (integers, floating point, characters): a program determines what it is Stored program concept: instructions just data Compilation v. interpretation thru system layers Principle of Locality, exploited via a memory hierarchy (cache) Greater performance by exploiting parallelism (pipelining, superscalar, MapReduce, multi-..) Principles/Pitfalls of Performance Measurement CS61C L31 Summary & Goodbye (3)

What are Machine Structures? Software Hardware Application (ex: browser) Compiler Assembler Processor Memory Digital Design Circuit Design transistors Operating System (Mac OSX) Datapath & Control I/O system Instruction Set Architecture CS61C Coordination of many levels (layers) of abstraction CS61C L31 Summary & Goodbye (4)

61C Levels of Representation High Level Language Program (e.g., C) Compiler Assembly Language Program (e.g.,mips) Assembler Machine Language Program (MIPS) Machine Interpretation Hardware Architecture Description (Logic, Logisim, Verilog, etc.) Architecture Implementation Logic Circuit Description (Logisim, etc.) temp = v[k]; v[k] = v[k+1]; v[k+1] = temp; lw $t0, 0($2) lw $t1, 4($2) sw $t1, 0($2) sw $t0, 4($2) 0000 1001 1100 0110 1010 1111 0101 1000 1010 1111 0101 1000 0000 1001 1100 0110 1100 0110 1010 1111 0101 1000 0000 1001 0101 1000 0000 1001 1100 0110 1010 1111 CS61C L31 Summary & Goodbye (5)

Conventional Wisdom (CW) in Comp Arch Thanks to Dave Patterson for these Old CW: Power free, Transistors expensive New CW: Power expensive, Transistors free Can put more on chip than can afford to turn on Old CW: Chips reliable internally, errors at pins New CW: 45 nm high error rates Old CW: CPU manufacturers minds closed New CW: Power wall + Memory gap = Brick wall New idea receptive environment Old CW: Uniprocessor performance 2X / 1.5 yrs New CW: 2X CPUs per socket / ~ 2 to 3 years More simpler processors more power efficient CS61C L31 Summary & Goodbye (6)

Massively Parallel Socket Processor = new transistor? Does it only help power/cost/performance? Intel 4004 (1971): 4-bit processor, 2312 transistors, 0.4 MHz, 10 µm PMOS, 11 mm 2 chip RISC II (1983): 32-bit, 5 stage pipeline, 40,760 transistors, 3 MHz, 3 µm NMOS, 60 mm 2 chip 4004 shrinks to ~ 1 mm 2 at 3 micron 125 mm 2 chip, 65 nm CMOS = 2312 RISC IIs + Icache + Dcache RISC II shrinks to ~ 0.02 mm 2 at 65 nm Caches via DRAM or 1 transistor SRAM (www.t-ram.com)? Proximity Communication at > 1 TB/s? Ivan Sutherland @ Sun spending time in Berkeley! CS61C L31 Summary & Goodbye (7)

20th vs. 21st Century IT Targets 20th Century Measure of Success Performance (peak vs. delivered) Cost (purchase cost vs. ownership cost, power) 21st Century Measure of Success? SPUR Security Privacy Usability Reliability Massive parallelism greater chance (this time) if Measure of success is SPUR vs. only cost-perf Uniprocessor performance improvement decelerates CS61C L31 Summary & Goodbye (8)

Other Implications Need to revisit chronic unsolved problem Parallel programming!! Implications for applications: Computing power >>> CDC6600, Cray XMP (choose your favorite) on an economical die inside your watch, cell phone or PDA On your body health monitoring Google + library of congress on your PDA As devices continue to shrink The need for great HCI critical as ever! CS61C L31 Summary & Goodbye (9)

Administrivia Regrade requests due TODAY at 7 Only for assignments after HW2 Only for grading mistakes Final Exam Only bring pen{,cil}s, two 8.5 x11 handwritten sheets + green. Leave backpacks, books, calculators, cells & pagers home! Everyone must take ALL of the final! CS61C L31 Summary & Goodbye (10)

Join Us If you did well in CS3 or 61{A,B,C} (A- or above) and want to be on staff? Usual path: Lab assistant Reader TA Contact Jenny Jones in 395 Soda before first week of semester for LA signup Reader/TA forms: www.cs/~juliea/ I (Dan) strongly encourage anyone who gets an A- or above in the class to follow this path It will help you internalize the material Help fellow students, (and get paid for it) CS61C L31 Summary & Goodbye (11)

Taking advantage of Cal Opportunities Why are we the #2 Univ in the WORLD? So says the 2004 ranking from the Times Higher Education Supplement Research, reseach, research! Whether you want to go to grad school or industry, you need someone to vouch for you! (as is the case with the Mob) Techniques Find out what you like, do lots of web research (read published papers), hit OH of Prof, show enthusiasm & initiative research.berkeley.edu/ www.eecs.berkeley.edu/research/ CS61C L31 Summary & Goodbye (12)

Some Current Research RADLab (Reliable Adaptive Distributed) Looking at datacenter architectures RAMP (Research Accelerator for Multiple Processors) Use FPGA s to get many cores Picture on right is 1008 cores in 1 rack Berkeley View Vision for future of parallel CS61C L31 Summary & Goodbye (13)

Upper Div s that Build on CS61C CS150 - Design Techniques for SDS CS152 - Computer Architecture CS162 - Operating Systems CS164 - Prog. Lang. & Compilers CS194-3 - Intro to Computer Systems CS198-5 - Networked Computing EE122 - Networking CS61C L31 Summary & Goodbye (14)

Penultimate slide: Thanks to the staff! TAs Valerie Ishida Clark Leung Readers Michael Shuh Abhishek Karwa Thanks to all the past CS61C Instructors, who have: Trained myself and the staff Made these notes and other course material CS61C L31 Summary & Goodbye (15)

The Future for Future Cal Alumni What s The Future? New Millennium Wireless, Nanotechnology, Quantum Computing, 10 M volunteer CPUs, the Parallel revolution... Rapid Changes in Technology World s 2nd Never Give Up! Best Education The best way to predict the future is to invent it Alan Kay CS61C L31 Summary & Goodbye (16) The Future is up to you!