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
Caches
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Jennifer Konikowski
November 23, 2016
Technology
1.3k
0
Share
Caches
A quick overview of how caches work, given at PyLadies Boston.
Jennifer Konikowski
November 23, 2016
More Decks by Jennifer Konikowski
See All by Jennifer Konikowski
Building a Great Tech Resume
jmkoni
0
890
Building A Community For All People
jmkoni
0
26
Scala: Welcome To The Wonderful World Of Functional Programming
jmkoni
0
13k
Building a Community For All People
jmkoni
0
1.5k
Building A Community For Beginners
jmkoni
0
5.5k
SQL! Fun, Delight, Only A Mild Amount Of Terror
jmkoni
0
4.5k
Parsing Job Listings
jmkoni
0
1.4k
User Stories: What, Why, And How
jmkoni
1
72
Writing User Stories For Engineers
jmkoni
0
1.4k
Other Decks in Technology
See All in Technology
Platform Engineering as a Product: Criteria for Improvement and Multi-Tenant Design
kumorn5s
0
500
Ruby::Boxでできること、Refinementsでできること
joker1007
3
390
AIを「創る」と「使う」の循環 — HRテックが実践するリアルなAI組織実装
taketo957
0
1.5k
ポケモンの型をTypeScriptの型システムで表現してみた
subroh0508
0
310
「嘘をつくテスト」の失敗例から学ぶ 良いテストコード #frontend_phpcon_do
asumikam
0
220
Claude code Orchestra
ozakiomumkj
3
950
TypeScript Compiler APIとPHP-Parserを活用し、TypeScriptとPHPで型を共有する
shuta13
0
360
価格.comをAI駆動で全面刷新する ー 30年分の技術的負債を返し、次の30年の土台をつくる ー / AI Engineering Summit Tokyo 2026
tkyowa
46
51k
新規事業を牽引する技術選定 〜フルスタックTypeScript開発の実践事例〜
nullnull
3
320
PHP と TypeScript の型システム比較:AI 時代の「型」は誰のためにあるのか? #frontend_phpcon_do / frontend_phpcon_do_2026
shogogg
1
240
Dario Amodi『Policy on the AI Exponential』を理解する
nagatsu
0
160
JEP 522 Deep Dive - G1 GC同期コスト削減によるスループット向上を徹底検証&解説
tabatad
1
780
Featured
See All Featured
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
580
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
Design in an AI World
tapps
1
220
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.3k
Statistics for Hackers
jakevdp
799
230k
Navigating Weather and Climate Data
rabernat
0
210
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
The Illustrated Children's Guide to Kubernetes
chrisshort
51
52k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
130
My Coaching Mixtape
mlcsv
0
140
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
Transcript
CACHES the reason your computer is so darn fast
BASIC IDEA
BASIC IDEA Processor Bus Main Memory
BASIC IDEA Processor Bus* Main Memory *communication system that transfers
data between components inside a computer*
BASIC IDEA Processor Cache Bus Main Memory
BASIC IDEA Processor Cache Bus Main Memory
BASIC IDEA Processor Cache Bus Main Memory
BASIC IDEA Processor Cache Bus Main Memory
BASIC IDEA Processor Cache Bus Main Memory
HOW DO THEY WORK?
DIRECT MAPPED Slot Valid Block Blocks Copied 0 0 1
0 2 0 3 0 4 0 0 5 0 6 0 7 0 8 0 Main Mem Addresses: 438 439 534 473 434 535
DIRECT MAPPED Tag Slot Block Offset 4 3 8 4
3 9 5 3 4 4 7 3 4 3 4 5 3 5 Main Mem Addresses: 438 439 534 473 434 535 First, we split the addresses:
DIRECT MAPPED Slot Valid Block Blocks Copied 0 0 1
0 2 0 3 1 4 430-439 4 0 0 5 0 6 0 7 0 8 0 Main Mem Addresses: 438 439 534 473 434 535 miss!
DIRECT MAPPED Slot Valid Block Blocks Copied 0 0 1
0 2 0 3 1 4 430-439 4 0 0 5 0 6 0 7 0 8 0 Main Mem Addresses: 438 439 534 473 434 535 miss! hit!
DIRECT MAPPED Slot Valid Block Blocks Copied 0 0 1
0 2 0 3 1 5 530-539 4 0 0 5 0 6 0 7 0 8 0 Main Mem Addresses: 438 439 534 473 434 535 miss! hit! miss!
DIRECT MAPPED Slot Valid Block Blocks Copied 0 0 1
0 2 0 3 1 5 530-539 4 0 0 5 0 6 0 7 1 4 470-479 8 0 Main Mem Addresses: 438 439 534 473 434 535 miss! hit! miss! miss!
DIRECT MAPPED Slot Valid Block Blocks Copied 0 0 1
0 2 0 3 1 4 430-439 4 0 0 5 0 6 0 7 1 4 470-479 8 0 Main Mem Addresses: 438 439 534 473 434 535 miss! hit! miss! miss! miss!
DIRECT MAPPED Slot Valid Block Blocks Copied 0 0 1
0 2 0 3 1 5 530-539 4 0 0 5 0 6 0 7 1 4 470-479 8 0 Main Mem Addresses: 438 439 534 473 434 535 miss! hit! miss! miss! miss! miss!
SET ASSOCIATIVE Slot Valid Block Blocks Copied 0 0 0
0 1 0 1 0 2 0 2 0 3 0 3 0 4 0 4 0 Main Mem Addresses: 438 439 534 403 434 535
SET ASSOCIATIVE Slot Valid Block Blocks Copied 0 0 0
0 1 0 1 0 2 0 2 0 3 1 4 430-439 3 0 4 0 4 0 Main Mem Addresses: 438 439 534 403 434 535 miss!
SET ASSOCIATIVE Slot Valid Block Blocks Copied 0 0 0
0 1 0 1 0 2 0 2 0 3 1 4 430-439 3 0 4 0 4 0 Main Mem Addresses: 438 439 534 403 434 535 miss! hit!
SET ASSOCIATIVE Slot Valid Block Blocks Copied 0 0 0
0 1 0 1 0 2 0 2 0 3 1 4 430-439 3 1 5 530-539 4 0 4 0 Main Mem Addresses: 438 439 534 403 434 535 miss! hit! miss!
SET ASSOCIATIVE Slot Valid Block Blocks Copied 0 0 4
400-409 0 0 1 0 1 0 2 0 2 0 3 1 4 430-439 3 1 5 530-539 4 0 4 0 Main Mem Addresses: 438 439 534 403 434 535 miss! hit! miss! miss!
SET ASSOCIATIVE Slot Valid Block Blocks Copied 0 0 4
400-409 0 0 1 0 1 0 2 0 2 0 3 1 4 430-439 3 1 5 530-539 4 0 4 0 Main Mem Addresses: 438 439 534 403 434 535 miss! hit! miss! miss! hit!
SET ASSOCIATIVE Slot Valid Block Blocks Copied 0 0 4
400-409 0 0 1 0 1 0 2 0 2 0 3 1 4 430-439 3 1 5 530-539 4 0 4 0 Main Mem Addresses: 438 439 534 403 434 535 miss! hit! miss! miss! hit! hit!