TI1400 Computer Organization at TU Delft

advertisement
Computer Organization
TI1405 (former TI1400, now -1EC)
Alexandru Iosup (lecturer)
Parallel and Distributed Systems
A Digital Computer
CPU Type
CPU Speed
M/board chipset
Memory
Video card
Max. Res.
HDD
Interface USB/FW
Network wired
…
Intel Core i5 2430M
2.4 GHz
Intel Mobile QM67
4GB DDR3 (SODIMM)
NVIDIA Quadro NVS 4200M
1600x900 (WXGA++)
500GB at 5.400RPM
eSATA, 2x USB 2.0
Ethernet 1Gbps
…
Source: http://tweakers.net/pricewatch/294153/lenovo-thinkpad-t420-(nw1b8mh)-+-3-jaar-garantie.html#tab:info
A Digital Computer
M/board floorplan. Source: Intel Corp., and Linda Null and Julia Lobur.
A CPU
IA-32 floorplan. Source: Intel Corp.
TI1405/2013: Course Goals
“gain fundamental knowledge about the organization
and architecture of computer systems”
• Organization = all physical aspects of the computer
• Circuits, memory types, signals, making things tick
• Architecture = all logical aspects
• Let programmers interact with the working system
• Instruction sets, opcodes, data structures, addressing, memory
access, I/O mechanisms, etc.
Know Thy Platform
• Programming hot functions
• Programming optimized functions
• Linear algebra (BLAS)
• Video, sound, and security codecs
• Vertex and pixel shaders on GPUs
• Building low-power devices (embed: $1Tn/2011)
• Real-time platforms
• Games, Simulations, Navigation systems, Medical equipment
• Matching algorithm and platform: improve
performance up to a factor of 100
(Michael Abrash: Doom, Quake, …)
System Tuning
ATARI VCS (1977)
Home entertainment system
• Video, Sound, Games
• Pluggables: joystick, dance mat, …
• Today we use Wiis and XBox360s
Ultra-low-cost platform
• CPU: MOS 6502 at 1MHz
low cost, low mem
• GFX, sound: 4 KB ROM (max 8K)
• State, score: 128 bytes RAM
(Apple II had 4 kilo-bytes)
• RAM/Input/Output/Timer controller
“Any mistake in timing produced visual artifacts, a
problem programmers called racing the beam.”
Doom (1993)
• “For me, while I do take a lot of pride in shipping a
great product, the achievements along the way
are more memorable. I don't remember any of our
older product releases, but I remember the important
insights all the way back to using CRTC wraparound
for infinite smooth scrolling in Keen (actually, all the
way back to understanding the virtues of
structures over parallel arrays in apple II
assembly language…) Knowledge builds on
knowledge.” John Carmack, .plan, Feb 1998
Program Optimization
Peak vs Real Performance
“One EC2 Compute Unit (ECU) provides the equivalent
CPU capacity of a 1.0-1.2 GHz 2007 Opteron or 2007
Xeon processor.” Amazon EC2
• Original code
~10% Peak
• w/o SIMD
<50%
• ACML
~90%
Source: http://www.cs.berkeley.edu/~volkov/cs267.sp09/hw1/results/
The Performance Gap Processor-Memory
Processor: CPU Speeds 2X every 2 years
~Moore’s Law; limit ~2010
Memory: DRAM Speeds
2X every 7 years
Gap Still
Growing?
Gap: 2X every 2 years
10
TI1400/13-PDS
TU-Delft
Evolution of Computing
The “Data Deluge”:
Facts and Predictions
"Everywhere you look, the quantity of
information in the world is soaring.
According to one estimate, mankind
created 150 exabytes (billion gigabytes)
of data in 2005. This year, it will create
1,200 exabytes. Merely keeping up with
this flood, and storing the bits that
might be useful, is difficult enough.
Analysing it, to spot patterns and
extract useful information, is harder
still.“
The Data Deluge, The Economist, 25
February 2010.
Conceptual Map of TI1405/2013
You are here
L0. Introduction
L1. Digital Logic
L2. Digital Data
L3. ISAs
L4. Assembler
L5. IA-32/MIPS
L6. Basic Processing Unit
L7.1. I/O + OS
L9. Large Sys.
L7.1. Memory + Perf.
L8. Pipelining + Perf.
Rd. Prog. Principles
Course Mapping to CS Curricula of
ACM/IEEE and TU Delft
• Body of Knowledge: Architecture and Organization
• AR1. Digital Logic and Data Representation [core]
• AR2. Computer Architecture and Organization [core]
• AR3. Interfacing and I/O Strategies [core]
• AR4. Memory Architecture [core]
• AR5. Functional Organization [core]
• AR6. Multiprocessing [core]
• AR7. Performance Enhancements [elective]
• AR8. Directions in Computing [elective]
• TU Delft: Logic, Digital Logic, Programming Fundamentals, Operating
Systems, Distributed Algorithms, Distributed Systems, Cloud Comp., …
Course Material
(The Textbook, The Guides)
• Class Material
• V.C. Hamacher, Z.G. Vranesic, S.G. Zaky,
Computer Organization, 2012, McGraw-Hill, 6th Ed.
• Reader: Computer Organization, January 2007
• Lecture Slides
• Info: BlackBoard
• ATTN: textbook via
•
•
•
•
CH (second-hand 5th edition now obsolete)
Various online shops
McGraw Hill
The library
14
TI1400/13-PDS
TU-Delft
Overview ti1405
• Week 1 : Basic concepts, digital
logic, memory elements, finite
state machines
• Hamacher Apendix A
15
TI1400/13-PDS
TU-Delft
Overview ti1405
• Week 2 : Number representation and arithmetic
• Hamacher Chapter 9
16
TI1400/13-PDS
TU-Delft
Overview ti1400 [2/4]
• Week 3 : Instructions, addressing modes, assembler + IA-32
• Hamacher Chapter 12 and Appendix E
17
TI1400/13-PDS
Source: http://facepunch.com/showthread.php?t=267316
TU-Delft
Overview ti1400 [3/4]
• Week 4 : The Basic Processing Unit
• Hamacher Chapter 5
• Week 5 : Input/Output and
Memory Organization
• Hamacher Chapters 7 and 8
18
TI1400/13-PDS
TU-Delft
Overview ti1400 [4/4]
• Week 6: Pipelining
• Hamacher Chapter 6
• Week 6 : Language levels and translation
• Course Reader (Dictaat)
19
TI1400/13-PDS
TU-Delft
Overview ti1400 [4/4]
• Week 7 : Large Computer Systems
• Hamacher Chapter 12
20
TI1400/13-PDS
TU-Delft
TI1405/2013 Schedule
(under Blackboard/Course Information)
L
L
L L
L
L LP LP P
T T
T T
T
T
L L
L
L L
L
E
L
P
T
Lecture (Hoorcollege)
E
Exam
Lab (Practicum)
Tutorial (Instructie)
Coarse Time Allocation
• Classes (Lectures + Discussion)
• 2 hours per week (see College Rooster)
• Tutorial (Instructie)
• 1 hour per week (see College Rooster)
• Laboratory assignments
• 5 mandatory + several voluntary + 1 bonus
• Self-Study
• 4-8 hours per week or
you have good chances (>25%) to fail
22
TI1400/13-PDS
TU-Delft
Detailed Time Allocation
Lecture Tutorial Lab Self-Study
1. Digital Logic
4h
1/2h
10h
2. Data Repr./Processing
4h
1/2h
10h

3. ISAs/Assembler
<6h
2h
8+16h
4. Basic Processing Unit
<4h
2h
10h
5. I/O + OS Principles
2h
1h
5h
6. Memory + Performance
2h
1h
5h
7. Pipelining + Perf.
2h
2h
10h

8. Programming Principles <2h
4+8h
9. Parallelism/Distribution
2h
1h
10h
Total (5EC ~ 140h)
<28h
14h 12+24h
60h
The Grading System
This Course Is Gamified
1. Course Points
2. Access Tokens 3. Brownie Points
10,000 for straight 10
Start with 1
+1,000 team self-study
Bonus Lab
+1,000 lab bonus #2
I will bake
assignments
brownies for you!
Lab and Self-Study, various
(but not force
Advanced topics
+300 correct exam Q
you to eat them)
(GPUs, clouds)
+50 activity in Slide Error/
Lecture/Tutorial activity
+50 correct end-lecture quiz Discuss w Lecturer
+500 entry quiz
Rec. letter
http://www.elanaspantry.com/brownies/
TI1400/13-PDS
TU-Delft
Mid-Term and Final Exams
• In week 5 of Q1 there is a mid-term exam, 10 Qs
• You can take the exam, but you do not have to
• 3,000 points up for grabs
• You can only win by taking the quiz!
• November 11, 2013: Final exam, 30 Qs
•
•
•
•
10 Qs overlap with mid-term exam, we use your best score
15-20 Qs about new material
Twice per year
Old examinations will be found in due time on Blackboard
(also, via material shared on other channels)
25
TI1400/13-PDS
TU-Delft
Contact Code
• Include “[ti1405]” (without the quotes) in the Subject
field of any TI1405-related email
26
TI1400/13-PDS
TU-Delft
The Grading System
1. Course Points
2. Access Tokens 3. Brownie Points
Q: Why thisStart
complicated
10,000 for straight 10
with system?
1
+1,000 team self-study
A:
Bonus Lab
+1,000 lab bonus #2
I will bake
1. assignments
Gamification =
+500 lab bonus #1 more tracks of advancement +brownies for you!
(but not force
involved
in the classroom
Advanced
topics
+300 correct examkeeps
Q top students
you to eat them)
(GPUs,
clouds)
+50 activity in 2. Decoupling
grading
schemes =
to “cultuur
van zesjes”
Lab/Lecture/Tutorial responding
Discuss
w Lecturer
3. >65%quiz
success
rate at first
exam for
+25 correct end-lecture
Propose
Exam
Qs2 years now.
+500 entry quiz
TI1400/13-PDS
Rec. letter
TU-Delft
The Grading System
Q: Can you explain this system again? Where does gamification play a role?
1. Course Points
2. Access Tokens 3. Brownie Points
A:
10,000 for straight 10
Start
with 1
+1,000 team self-study
1. Course = Exam + Lab + Lectures + Tutorial
Bonus Lab
+1,000 2.
lab You
bonus
#2
I will bake
prove your theoretical knowledge during the Exam.
assignments
brownies for you!
+500 lab bonus
#1
3. You prove your technical skill during the Lab.
(but not force
Advanced
topics
+300
correct
exam
Q between
4. You
cross the
bridge
conceptual and
practical in the Tutorial.
you to eat them)
(GPUs,
+50 activity
5. inYou need to pass
Lab toclouds)
take the exam.
Lab/Lecture/Tutorial
6. You can get extra (bonus)
points forwLab,
Lectures, and Tutorial,
Discuss
Lecturer
through extra assignments, lecture participation and end-lecture quizzes,
+25 correct
end-lectureand
quiz
Propose Exam
Qs
team-/self-study,
respectively.
Rec. academic
letter year, so make sure you
7.
Extra
points quiz
count only for the current
+500
entry
pass the Exam.
TI1400/13-PDS
TU-Delft
Questions?
TI1400/13-PDS
TU-Delft
Download