Академический Документы
Профессиональный Документы
Культура Документы
Agenda
Thinking about Machine Structures Great Ideas in Computer Architecture What you need to know about this class
8/26/11
Agenda
Thinking about Machine Structures Great Ideas in Computer Architecture What you need to know about this class
8/26/11
Languages like C are closer to the underlying hardware, unlike languages like Scheme!
Allows us to talk about key hardware features in higher level terms Allows programmer to explicitly harness underlying hardware parallelism for high performance
7/26/2012 Fall 2011 -- Lecture #1 4
8/26/11
8/26/11
8/26/11
CS61c
Instruction Set Architecture
Software Hardware
Assembler Processor
Memory
8/26/11
Hardware
Warehouse Scale Computer Smart Phone
Harness
Parallel Instructions
>1 instruction @ one time e.g., 5 pipelined instructions
Parallel Data
>1 data item @ one time e.g., Add of 4 pairs of words
Hardware descriptions
All gates functioning in parallel at same time
7/26/2012
Main Memory
Fall 2011 -- Lecture #1
Agenda
Thinking about Machine Structures Great Ideas in Computer Architecture What you need to know about this class
8/26/11
10
7/26/2012
11
12
Year
13
Jim Grays Storage Latency Analogy: How Far Away is the Data?
10 9
2,000 Years
Jim Gray Turing Award B.S. Cal 1966 2 Years Ph.D. Cal 1969!
10
6 Disk
100 10 2 1
Sacramento
This Campus This Room My Head
7/26/2012
15
7/26/2012
16
7/26/2012
17
Latency
How long to set the problem up How much faster does it execute once it gets going It is all about time to finish
7/26/2012 Fall 2011 -- Lecture #1 18
50,000 x 4 = 200,000 disks 200,000 x 4% = 8000 disks fail 365 days x 24 hours = 8760 hours
Fall 2011 -- Lecture #1 20
1+1=2
7/26/2012
1+1=2
Fall 2011 -- Lecture #1
1+1=1
FAIL!
7/26/2012
22
Agenda
Thinking about Machine Structures Great Ideas in Computer Architecture What you need to know about this class
8/26/11
23
Yoda says
Our schedule may change slightly depending on some factors. This includes lectures, assignments & labs
7/26/2012
25
Course Information
Course Web: http://inst.eecs.Berkeley.edu/~cs61c/ Instructors:
Dan Garcia, Michael Franklin
Teaching Assistants:
Brian Gawalt (Head TA), Eric Liang, Paul Ruan, Sean Soleyman, Anirudh Todi, and Ian Vonseggern
Piazza:
Every announcement, discussion, clarification happens there
7/26/2012
27
Reminders
Discussions and labs will be held next week
Switching Sections: if you find another 61C student willing to swap discussion (from the Piazza thread) AND lab, talk to your TAs Partners (only project 2,3 and performance competition)
7/26/2012
28
Course Organization
Grading
EPA: Effort, Participation and Altruism (5%) Homework (10%) Labs (5%) Projects (20%)
1. Computer Instruction Set Simulator (C) 2. Data Parallelism (Map-Reduce on Amazon EC2) 3. Performance Tuning of a Parallel Application/Matrix Multiply using cache blocking, SIMD, MIMD (OpenMP) 4. Computer Processor Design (Logisim)
Matrix Multiply Competition for honor (and EPA) Midterm (25%): date TBA, can be clobbered! Final (35%): 3-6 PM Thursday December 15th
7/26/2012 Fall 2011 -- Lecture #1 29
Participation
Attending lecture and voting using the clickers Asking great questions in discussion and lecture and making it more interactive
Altruism
Helping others in lab or on Piazza
EPA! extra credit points have the potential to bump students up to the next grade level! (but actual EPA! scores are internal)
7/26/2012
35
10
7/26/2012
36
Summary
CS61C: Learn 6 great ideas in computer architecture to enable high performance programming via parallelism, not just learn C
1. 2. 3. 4. 5. 6.
7/26/2012
Layers of Representation/Interpretation Moores Law Principle of Locality/Memory Hierarchy Parallelism Performance Measurement and Improvement Dependability via Redundancy
Fall 2011 -- Lecture #1 37