Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Lecture 2: CSCI E-1 Spring 2013
Search
Tommy MacWilliam
February 05, 2013
Education
0
780
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
310
Lecture 8: CSCI E-1 Spring 2013
tmacwill
0
410
Lecture 6: CSCI E-1 Spring 2013
tmacwill
1
450
Lecture 7: CSCI E-1 Spring 2013
tmacwill
0
520
Lecture 5: CSCI E-1 Spring 2013
tmacwill
1
580
Incorporating Version Control into Programming Courses
tmacwill
1
110
Lecture 4: CSCI E-1 Spring 2013
tmacwill
0
400
Lecture 3: CSCI E-1 Spring 2013
tmacwill
0
480
Lecture 1: CSCI E-1 Spring 2013
tmacwill
0
320
Other Decks in Education
See All in Education
自分にあった読書方法を探索するワークショップ / Reading Catalog Workshop
aki_moon
0
280
XML and Related Technologies - Lecture 7 - Web Technologies (1019888BNR)
signer
PRO
0
2.6k
Web Application Frameworks - Lecture 4 - Web Technologies (1019888BNR)
signer
PRO
0
2.7k
HTML5 and the Open Web Platform - Lecture 3 - Web Technologies (1019888BNR)
signer
PRO
1
2.6k
1127
cbtlibrary
0
170
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
2.6k
子どものためのプログラミング道場『CoderDojo』〜法人提携例〜 / Partnership with CoderDojo Japan
coderdojojapan
4
15k
H5P-työkalut
matleenalaakso
4
36k
20241004_Microsoft認定資格のFundamentals全部取ってみた
ponponmikankan
2
390
A Chatbot is Not a Search Engine (it's more like a roleplaying game)
dsalo
0
100
Казармы и гарнизоны
pnuslide
0
160
The Prison Industrial Complex by Billy Dee
oripsolob
0
180
Featured
See All Featured
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
44
7k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
StorybookのUI Testing Handbookを読んだ
zakiyama
28
5.4k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Embracing the Ebb and Flow
colly
84
4.5k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
113
50k
A Philosophy of Restraint
colly
203
16k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
10
860
Producing Creativity
orderedlist
PRO
343
39k
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