Berkeley COMPSCI 61C - Lecture Notes (9 pages)
Previewing pages 1, 2, 3 of 9 page document View the full content.Lecture Notes
Previewing pages 1, 2, 3 of actual document.
View the full content.View Full Document
Lecture Notes
0
0
148 views
- Pages:
- 9
- School:
- University of California, Berkeley
- Course:
- Compsci 61c - Machine Structures
Machine Structures Documents
-
Lecture 24 - Review Pipelined Execution
6 pages
-
42 pages
-
28 pages
-
6 pages
-
36 pages
-
27 pages
-
8 pages
-
120 pages
-
C/Assembler Arithmetic and Memory Access
34 pages
-
27 pages
-
28 pages
-
38 pages
-
5 pages
-
6 pages
-
13 pages
-
2 pages
-
Introduction to Synchronous Digital Systems
31 pages
-
36 pages
-
6 pages
-
36 pages
-
7 pages
-
49 pages
-
Lecture 10 Floating Point, Part II and Miscellaneous
49 pages
-
Introduction to MIPS Data Transfer & Decisions I
4 pages
-
9 pages
-
2 pages
-
24 pages
-
24 pages
-
33 pages
-
30 pages
-
9 pages
-
16 pages
-
7 pages
-
Representations of Combinational Logic Circuits
11 pages
-
32 pages
-
Introduction to MIPS Assembly language : Arithmetic
4 pages
-
23 pages
-
Lecture 26 – Single Cycle CPU Datapath II
16 pages
-
11 pages
-
70 pages
-
10 pages
-
Instruction Level Parallelism— The Datapath
59 pages
-
15 pages
-
How to Connect from Home with Windows
3 pages
-
82 pages
-
27 pages
-
9 pages
-
14 pages
-
Lecture 24 Review Pipelined Execution
29 pages
-
Lecture 22 - Introduction to Performance
6 pages
-
39 pages
-
6 pages
-
6 pages
-
42 pages
-
25 pages
-
7 pages
-
41 pages
-
Lecture 21 Introduction to Pipelined Execution
39 pages
-
4 pages
-
Solutions and grading standards for exam 1
6 pages
-
6 pages
-
8 pages
-
4 pages
-
12 pages
-
38 pages
-
32 pages
-
22 pages
-
31 pages
-
5 pages
-
31 pages
-
40 pages
-
4 pages
-
5 pages
-
Introduction to the C Programming Language
4 pages
-
24 pages
-
13 pages
-
12 pages
-
50 pages
-
24 pages
-
24 pages
-
State Elements - Circuits that Remember
10 pages
-
9 pages
-
Lecture 14 MIPS Instruction Representation II
24 pages
-
State Elements - Circuits That Remember
20 pages
-
63 pages
-
Mapping PL Objects to the Machine – managing the address space
21 pages
-
28 pages
-
27 pages
-
31 pages
-
Introduction to Synchronous Digital Systems
5 pages
-
25 pages
-
Redundant Arrays of Inexpensive Disks
53 pages
-
4 pages
-
6 pages
-
24 pages
-
28 pages
-
5 pages
-
5 pages
-
29 pages
-
36 pages
-
28 pages
-
24 pages
-
28 pages
-
50 pages
-
14 pages
-
20 pages
-
24 pages
-
Lecture 14 MIPS Instruction Representation II
4 pages
-
37 pages
-
24 pages
-
5 pages
-
Representations of Combinational Logic Circuits
10 pages
-
24 pages
-
27 pages
-
Introduction to MIPS Procedures II & Logical Ops
36 pages
-
CS61c - Introduction to Synchronous Digital Systems
9 pages
-
19 pages
-
5 pages
-
40 pages
-
Introduction to MIPS Data Transfer & Decisions I
25 pages
-
24 pages
-
16 pages
-
Mapping PL Objects to the Machine – managing the address space
21 pages
-
14 pages
-
11 pages
-
9 pages
-
ntroduction to MIPS Instruction Representation III
4 pages
-
5 pages
-
14 pages
-
Lecture 29 Performance & Parallel Intro
6 pages
-
25 pages
-
42 pages
-
40 pages
-
11 pages
-
41 pages
-
Introduction to Synchronous Digital Systems
31 pages
-
24 pages
-
7 pages
-
36 pages
-
34 pages
-
25 pages
-
41 pages
-
5 pages
-
Great Ideas in Computer Architecture
14 pages
-
33 pages
-
4 pages
-
11 pages
-
MIPS Instruction Representation II
24 pages
-
Penitium III, IV and other PC buzzwords
7 pages
-
Introduction to Synchronous Digital Systems
16 pages
-
4 pages
-
27 pages
-
8 pages
-
New-School Machine Structures
10 pages
-
27 pages
-
22 pages
-
ModelSim Installation & Tutorial
5 pages
-
28 pages
-
Lecture 2 – Number Representation
30 pages
-
24 pages
-
7 pages
-
12 pages
-
42 pages
-
30 pages
-
24 pages
-
24 pages
-
Lecture 27 – Single Cycle CPU Datapath, with Verilog II
24 pages
-
Lecture 17 Instruction Representation III
5 pages
-
Instruction Representation III
25 pages
-
25 pages
-
39 pages
-
24 pages
-
Functions, Procedures in C/Assembly Language
29 pages
-
42 pages
-
38 pages
-
4 pages
-
3 pages
-
Switches, Transistors, Gates, Flip-‐Flops
9 pages
-
Other Instruction Sets: HPPA and Intel x86
34 pages
-
33 pages
-
28 pages
-
40 pages
-
3 pages
-
25 pages
-
28 pages
-
4 pages
-
Introduction to MIPS Assembly language Arithmetic
23 pages
-
5 pages
-
Lecture 13 MIPS Instruction Representation I
26 pages
-
10 pages
-
8 pages
-
Lecture 3 – Introduction to the C Programming Language
23 pages
-
4 pages
-
26 pages
-
7 pages
-
Lecture 5 – C Memory Management
25 pages
-
4 pages
-
Lecture 20 – Introduction to Synchronous Digital Systems
16 pages
-
31 pages
-
24 pages
-
6 pages
-
4 pages
-
24 pages
-
25 pages
-
47 pages
-
30 pages
-
34 pages
-
36 pages
-
6 pages
-
13 pages
-
18 pages
-
9 pages
-
22 pages
-
Lecture 28 – Single Cycle CPU Control I
21 pages
-
Lecture 3 – Introduction to the C Programming Language
26 pages
-
30 pages
-
25 pages
-
55 pages
-
43 pages
-
Introduction to MIPS Assembly language : Arithmetic
23 pages
-
16 pages
-
Introduction to MIPS Instruction Representation III
24 pages
-
Machine Representation/Numbers Lecture 3
6 pages
-
Lecture 5 - Decisions in C/Assembly Language
5 pages
-
Introduction to Synchronous Digital Systems
7 pages
-
3 pages
-
16 pages
-
7 pages
-
24 pages
-
30 pages
-
60 pages
-
Lecture 42 – Parallel Computing
25 pages
-
Lecture 5 – C Structs & Memory Mangement
12 pages
-
22 pages
-
30 pages
-
25 pages
-
Introduction to MIPS Assembly language : Arithmetic
23 pages
-
30 pages
-
40 pages
-
MIPS Instruction Representation II
4 pages
-
47 pages
-
4 pages
-
Introduction to MIPS Instruction Representation II
23 pages
-
Lecture 23 – Combinational Logic Blocks
22 pages
-
41 pages
-
4 pages
-
Lecture 11 - Starting a Program
7 pages
-
Introduction to MIPS Data Transfer & Decisions I
24 pages
-
10 pages
-
10 pages
-
6 pages
-
28 pages
-
21 pages
-
Lecture 25 - CPU Design: A Gentle Introduction
12 pages
-
22 pages
-
Introduction to MIPS Decisions II
24 pages
-
2 pages
-
36 pages
-
6 pages
-
Introduction to MIPS Procedures I
4 pages
-
36 pages
-
CPU Design : Pipelining to Improve Performance II
34 pages
-
32 pages
-
Lecture 4 – C Pointers and Arrays
11 pages
-
33 pages
-
23 pages
-
9 pages
-
17 pages
-
4 pages
-
8 pages
-
11 pages
-
48 pages
-
Great Ideas in Computer Architecture
50 pages
-
29 pages
-
4 pages
-
30 pages
-
16 pages
-
34 pages
-
26 pages
-
3 pages
-
9 pages
-
Introduction to Synchronous Digital Systems
16 pages
-
Lecture 13 Input/Output: Polling and Interrupts
32 pages
-
45 pages
-
4 pages
-
Introduction to the C Programming Language
27 pages
-
Solutions and grading standards for exam 2
10 pages
-
13 pages
-
28 pages
-
28 pages
-
Introduction to MIPS Data Transfer & Decisions I
24 pages
-
30 pages
-
4 pages
-
4 pages
-
Lecture 5 Decisions in C/Assembly Language
26 pages
-
4 pages
Sign up for free to view:
- This document and 3 million+ documents and flashcards
- High quality study guides, lecture notes, practice exams
- Course Packets handpicked by editors offering a comprehensive review of your courses
- Better Grades Guaranteed
2 14 11 CS 61C Great Ideas in Computer Architecture Machine Structures Performance Instructors Randy H Katz David A PaGerson hGp inst eecs Berkeley edu cs61c sp11 2 14 11 Spring 2011 Lecture 10 1 2 14 11 New School Machine Structures It s a bit more complicated Parallel Threads Assigned to core e g Lookup Ads Smart Phone Warehouse Scale Computer Harness How do Parallelism Achieve High we know Performance Computer Parallel Instruc ons 1 instruc on one me e g 5 pipelined instruc ons Parallel Data 1 data item one me e g Add of 4 pairs of words Hardware descrip ons All gates one me 2 14 11 Core Core Memory Cache Input Output Instruc on Unit s Core Func onal Unit s De ning Performance Administrivia Workloads and Benchmarks Technology Break Measuring Performance Summary A0 B0 A1 B1 A2 B2 A3 B3 Main Memory Logic Gates Spring 2011 Lecture 10 3 2 14 11 Agenda Spring 2011 Lecture 10 Spring 2011 Lecture 10 4 What is Performance De ning Performance Administrivia Workloads and Benchmarks Technology Break Measuring Performance Summary 2 14 11 2 Agenda So ware Hardware Parallel Requests Assigned to computer e g Search Katz Spring 2011 Lecture 10 Latency or response me or execu on me Time to complete one task Bandwidth or throughput Tasks completed per unit me 5 2 14 11 Spring 2011 Lecture 10 6 1 2 14 11 The Iron Law of Queues aka LiGle s Law Running Systems to 100 U liza on Implica on of the graph at the right Service Time aka Latency or Responsiveness Can you explain why this happens Knee 100 U liza on 2 14 11 Spring 2011 Lecture 10 Student RouleGe L W 7 2 14 11 Average number of customers in system L average interarrival rate x average service me W Spring 2011 Lecture 10 8 Google Instant Search Instant E ciency Cloud Performance Why Applica on Latency MaGers Key gure of merit applica on responsiveness Longer the delay the fewer the user clicks the less the user happiness and the lower the revenue per user 2 14 11 Spring 2011 Lecture 10 Typical search takes 24 seconds Google s search algorithm is only 300 ms of this It s not search as you type but search before you type We can predict what you are likely to type and give you those results in real me 9 De ning CPU Performance 2 passengers 11 1 secs in quarter mile 2009 Type D school bus 54 passengers quarter mile me hGp www youtube com watch v KwyCoQuhUNA Response Time Latency e g me to travel mile Throughput Bandwidth e g passenger mi in 1 hour Spring 2011 Lecture 10 Spring 2011 Lecture 10 10 De ning Rela ve CPU Performance What does it mean to say X is faster than Y Ferrari vs School Bus 2009 Ferrari 599 GTB 2 14 11 2 14 11 11 PerformanceX 1 Program Execu on TimeX PerformanceX PerformanceY 1 Execu on TimeX 1 Execu on Timey Execu on TimeY Execu on TimeX Computer X is N mes faster than Computer Y PerformanceX PerformanceY N or Execu on TimeY Execu on TimeX N Bus is to Ferrari as 12 is to 11 1 Ferrari is 1 08 mes faster than the bus 2 14 11 Spring 2011 Lecture 10 12 2 2 14 11 Measuring CPU Performance CPU Performance Factors Computers use a clock to determine when events takes place within hardware Clock cycles discrete me intervals To dis nguish between processor me and I O CPU me is me spent in processor aka clocks cycles clock periods clock cks Clock rate or clock frequency clock cycles per second inverse of clock cycle me 3 GigaHertz clock rate clock cycle me 1 3x109 seconds clock cycle me 333 picoseconds ps 2 14 11 Spring 2011 Lecture 10 13 CPU Performance Factors CPU Time Program Clock Cycles Program x Clock Cycle Time Or CPU Time Program Clock Cycles Program Clock Rate 2 14 11 Spring 2011 Lecture 10 14 Resta ng Performance Equa on But a program executes instruc ons CPU Time Program Clock Cycles Program x Clock Cycle Time Instructions Program x Average Clock Cycles Instruction x Clock Cycle Time Time Seconds Program Instruc ons Clock cycles Seconds Program Instruc on Clock Cycle 1st term called Instruc on Count 2nd term abbreviated CPI for average Clock Cycles Per Instruc on 3rd term is 1 Clock rate 2 14 11 Spring 2011 Lecture 10 15 2 13 11 What A ects Each Component Instruc on Count CPI Clock Rate Hardware or so ware component Algorithm Computer A clock cycle me 250 ps CPIA 2 Computer B clock cycle me 500 ps CPIB 1 2 Assume A and B have same instruc on set Which statement is true Red Computer A is 1 2 mes faster than B Orange Computer A is 4 0 mes faster than B Green Computer B is 1 7 mes faster than A Yellow Computer B is 3 4 mes faster than A Pink None of the above A ects What Instruc on Set Architecture Spring 2011 Lecture 10 16 Peer Instruc on Ques on Programming Language Compiler 2 13 11 Spring 2011 Lecture 10 Student RouleGe 17 2 13 11 Spring 2011 Lecture 10 19 3 2 14 11 Agenda Administrivia De ning Performance Administrivia Workloads and Benchmarks Technology Break Measuring Performance Summary 2 13 11 Spring 2011 Lecture 10 Lab 5 posted Project 2 1 Due Sunday 11 59 59 HW 4 Due Sunday 11 59 59 Midterm in less than three weeks No discussion during exam week TA Review Su Mar 6 2 5 PM 2050 VLSB Exam Tu Mar 8 6 9 PM 145 155 Dwinelle Small number of special considera on cases due to class con icts etc contact Dave or Randy 21 2 14 11 Agenda Spring 2011 Lecture 10 Workload Set of programs run on a computer Actual collec on of applica ons run or made from real programs to approximate such a mix Speci es both programs and rela ve frequencies Benchmark Program selected for use in comparing computer performance Benchmarks form a workload Usually standardized so that many use them 23 2 14 11 System Performance Evalua on Coopera ve Computer Vendor coopera ve for benchmarks started in 1989 SPECCPU2006 Description Interpreted string processing Block sorting compression 24 O en turn into number where bigger is faster SPECra o reference execu on me on old reference computer divide by execu on me on new computer to get an e ec ve speed up 400 637 9 770 15 3 2 389 0 85 400 817 9 650 11 8 1 050 1 72 400 724 8 050 11 1 336 10 0 400 1 345 Go game 1 658 1 09 400 721 Search gene sequence 2 783 0 80 400 890 9 330 10 5 Chess game 2 176 0 96 400 837 12 100 14 5 Quantum computer simulation 1 623 1 61 400 1 047 20 720 19 8 3 102 0 80 400 993 22 130 22 3 587 2 94 …
View Full Document