Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
Lecture 2: CSCI E-1 Spring 2013
Tommy MacWilliam
February 05, 2013
Education
0
460
Lecture 2: CSCI E-1 Spring 2013
Caching. CPUs. Hard disk drives. Parallelism. Pipelining. RAM. Registers. Solid-state drives
Tommy MacWilliam
February 05, 2013
Tweet
Share
More Decks by Tommy MacWilliam
See All by Tommy MacWilliam
Lecture 9: CSCI E-1 Spring 2013
tmacwill
0
140
Lecture 8: CSCI E-1 Spring 2013
tmacwill
0
140
Lecture 6: CSCI E-1 Spring 2013
tmacwill
1
260
Lecture 7: CSCI E-1 Spring 2013
tmacwill
0
220
Lecture 5: CSCI E-1 Spring 2013
tmacwill
1
230
Incorporating Version Control into Programming Courses
tmacwill
1
100
Lecture 4: CSCI E-1 Spring 2013
tmacwill
0
200
Lecture 3: CSCI E-1 Spring 2013
tmacwill
0
260
Lecture 1: CSCI E-1 Spring 2013
tmacwill
0
310
Other Decks in Education
See All in Education
Case Studies and Course Review - Lecture 12 - Information Visualisation (4019538FNR)
signer
PRO
0
450
子どもを抱えた転職活動
eririmba
1
430
Baparekraf Developer Day 2022 - Front-End (Rizqy Hidayat)
dicodingevent
0
520
Classi_会社紹介資料
classijp
8
36k
0518
cbtlibrary
0
100
【チラシ】2022 あしてらキャンプ・スタッフ募集説明会_株式会社あしたの寺子屋
ashitanoterakoya
0
150
Implicit Human-Computer Interaction - Lecture 11 - Next Generation User Interfaces (4018166FNR)
signer
PRO
1
640
VT22 - DA395A - Storage, geolocation & media
tibbelit
0
140
Baparekraf Developer Day 2022 - Back-End (Faisal Henry Susanto)
dicodingevent
0
480
【スクールガイド】MOOCRES
moocres
0
480
コミュニティ活動に精を出していたらモテモテになって転職もできた
ichimichi
1
1k
Baparekraf Developer Day 2022 - Blockchain (Asih Karnengsih)
dicodingevent
0
530
Featured
See All Featured
Done Done
chrislema
174
14k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
37
3.3k
Principles of Awesome APIs and How to Build Them.
keavy
113
15k
Teambox: Starting and Learning
jrom
123
7.7k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
11
4.7k
Building Flexible Design Systems
yeseniaperezcruz
310
34k
A Philosophy of Restraint
colly
192
15k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_i
23
15k
How New CSS Is Changing Everything About Graphic Design on the Web
jensimmons
213
11k
The Language of Interfaces
destraynor
148
20k
Designing for humans not robots
tammielis
241
23k
Learning to Love Humans: Emotional Interface Design
aarron
261
37k
Transcript
Computer Science E-1 Lecture 2: Hardware
From last time...
Pre-requisites
Pre-requisites
Math
Math
None
CPU RAM Hard Drive
CPU
None
None
None
None
Instruction Set
Instruction Set • data: read/write data from RAM
Instruction Set • data: read/write data from RAM • arithmetic:
add two numbers
Instruction Set • data: read/write data from RAM • arithmetic:
add two numbers • control flow: where do we go next?
Pipeline
None
Pipeline • fetch: get the next instruction
Pipeline • fetch: get the next instruction • decode: determine
which instruction was fetched
Pipeline • fetch: get the next instruction • decode: determine
which instruction was fetched • execute: run the instruction
Pipeline • fetch: get the next instruction • decode: determine
which instruction was fetched • execute: run the instruction • writeback: store the result (if necessary)
Fetch 0000001001010011
Decode 0000001001010011 Add 5 3
Decode Add 5 + 3
Execute 5 + 3 = 8
Writeback
None
Parallelism
None
None
Superscalar
Multi-core
Counting Candy
1. Start with a total of 0 2. For each
piece in the pile, add 1 to total 3. Remember that piece was counted
1. Find 4 friends 2. Divide candy among friends 3.
Friends count at same time
Four times as fast!
Four times as fast!
1. Find 4 friends 2. Divide candy among friends 3.
Friends count at same time 4. Add up friends’ totals
More friends!
Not faster :(
1. Pair up, add totals together 2. One friend goes
home, other remembers total 3. Repeat until counted
Much faster!
CPU Performance
None
“Megahertz Myth”
http://www.youtube.com/watch? v=PKF9GOE2q38
CPU RAM Hard Drive
Memory
Byte B 8 bits Kilobyte KB 1000 bytes Megabyte MB
1000000 bytes (1000 KB) Gigabyte GB 1000000000 bytes (1000 MB) Terabyte TB 1000000000000 bytes (1000 GB)
Byte B Kilobyte KB Megabyte MB Gigabyte GB Terabyte TB
Byte B Character of text Kilobyte KB Megabyte MB Gigabyte
GB Terabyte TB
Byte B Character of text Kilobyte KB Word document Megabyte
MB Gigabyte GB Terabyte TB
Byte B Character of text Kilobyte KB Word document Megabyte
MB MP3 song Gigabyte GB Terabyte TB
Byte B Character of text Kilobyte KB Word document Megabyte
MB MP3 song Gigabyte GB Movie Terabyte TB
Byte B Character of text Kilobyte KB Word document Megabyte
MB MP3 song Gigabyte GB Movie Terabyte TB 250,000 songs
Registers
RAM
None
None
None
None
00000000000000000000010100111001 101 102 103 104
Big-Endian
00111001000001010000000000000000 104 103 102 101
Little-Endian
Cache
None
CPU RAM Hard Drive
Hard Disk Drive
None
None
None
http://www.youtube.com/watch? v=kdmLvl1n82U
Filesystems
HDD Performance • seek time: position platters and read-write head
• data rate: transfer data to motherboard
None
Solid State Drive
None
http://www.youtube.com/watch? v=j84eEjP-RL4
Flash Memory
Virtual Memory
None
None
Capacity
L1 cache 64 kilobytes L2 cache 8 megabytes 1 MB
from RAM 4 gigabytes 1 MB from SSD 256 gigabytes 1 MB from HDD 1 terabyte
Performance
L1 cache 0.5 nanoseconds L2 cache 7 nanoseconds 1 MB
from RAM 0.25 milliseconds 1 MB from SSD 1 millisecond 1 MB from HDD 20 milliseconds
L1 cache 0.5 nanoseconds blink of an eye L2 cache
7 nanoseconds 1 MB from RAM 0.25 milliseconds 1 MB from SSD 1 millisecond 1 MB from HDD 20 milliseconds
L1 cache 0.5 nanoseconds blink of an eye L2 cache
7 nanoseconds 4 seconds 1 MB from RAM 0.25 milliseconds 1 MB from SSD 1 millisecond 1 MB from HDD 20 milliseconds
L1 cache 0.5 nanoseconds blink of an eye L2 cache
7 nanoseconds 4 seconds 1 MB from RAM 0.25 milliseconds 2 days 1 MB from SSD 1 millisecond 1 MB from HDD 20 milliseconds
L1 cache 0.5 nanoseconds blink of an eye L2 cache
7 nanoseconds 4 seconds 1 MB from RAM 0.25 milliseconds 2 days 1 MB from SSD 1 millisecond 1 week 1 MB from HDD 20 milliseconds
L1 cache 0.5 nanoseconds blink of an eye L2 cache
7 nanoseconds 4 seconds 1 MB from RAM 0.25 milliseconds 2 days 1 MB from SSD 1 millisecond 1 week 1 MB from HDD 20 milliseconds 4.5 months
Shopping!
Factors to Consider • display • weight • resolution •
CPU cores • CPU cache size • RAM size • storage capacity • HDD / SSD • peripherals • keyboard
Summary
CPU • instruction set • pipeline • parallelism • superscalar
• multi-core • clock speed • Moore’s Law • Megahertz Myth
Memory • byte, kilobyte, megabyte • registers • RAM •
addressing • big-endian, little-endian • caching • L1 cache, L2 cache, L3 cache • hard disk drive • platters, tracks, sectors • read-write heads • file allocation table • seek time, data rate • solid state drive • flash memory
Computer Science E-1 Lecture 2: Hardware