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
Cache behavior
Search
Chen
November 03, 2022
Science
0
78
Cache behavior
Chen
November 03, 2022
Tweet
Share
More Decks by Chen
See All by Chen
Example ROP in MIPS
tiffany_04192
0
49
defense
tiffany_04192
0
69
Dijkstra’s Algorithm
tiffany_04192
0
110
Floyd-Warshall
tiffany_04192
0
87
Topological sort DFS
tiffany_04192
0
85
BFS
tiffany_04192
0
120
DFS
tiffany_04192
0
93
Cache miss paper
tiffany_04192
0
110
Greedy
tiffany_04192
0
100
Other Decks in Science
See All in Science
教師なしテンソル分解に基づく、有糸分裂後の転写再活性化におけるヒストン修飾ブックマークとしての転写因子候補の抽出法
tagtag
0
120
構造設計のための3D生成AI-最新の取り組みと今後の展開-
kojinishiguchi
0
570
化学におけるAI・シミュレーション活用のトレンドと 汎用原子レベルシミュレーター: Matlantisを使った素材開発
matlantis
0
270
理論計算機科学における 数学の応用: 擬似ランダムネス
nobushimi
1
340
拡散モデルの概要 −§2. スコアベースモデルについて−
nearme_tech
PRO
0
590
生成AI による論文執筆サポートの手引き(ワークショップ) / A guide to supporting dissertation writing with generative AI (workshop)
ks91
PRO
0
250
Snowflakeによる統合バイオインフォマティクス
ktatsuya
0
490
解説!データ基盤の進化を後押しする手順とタイミング
shomaekawa
1
350
大規模言語モデルの開発
chokkan
PRO
84
33k
白金鉱業Meetup Vol.15 DMLによる条件付処置効果の推定_sotaroIZUMI_20240919
brainpadpr
1
500
Science of Scienceおよび科学計量学に関する研究論文の俯瞰可視化_ポスター版
hayataka88
0
130
Introduction to Image Processing: 2.Frequ
hachama
0
120
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.2k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
232
17k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
What's new in Ruby 2.0
geeforr
343
31k
Why Our Code Smells
bkeepers
PRO
334
57k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
140
10 Git Anti Patterns You Should be Aware of
lemiorhan
655
59k
Practical Orchestrator
shlominoach
186
10k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
506
140k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Transcript
23 Cache Behavior Example Set # Valid Tag Data 0
0 000 00 00 00 00 1 0 000 00 00 00 00 2 0 000 00 00 00 00 3 0 000 00 00 00 00 4 0 000 00 00 00 00 5 0 000 00 00 00 00 6 0 000 00 00 00 00 7 0 000 00 00 00 00 Cache starts empty (valid = 0), 8 blocks (or sets) in cache, 4B blocks, 16-bit address
24 Cache Behavior Example Set # Valid Tag Data 0
0 000 00 00 00 00 1 0 000 00 00 00 00 2 0 000 00 00 00 00 3 0 000 00 00 00 00 4 0 000 00 00 00 00 5 0 000 00 00 00 00 6 0 000 00 00 00 00 7 0 000 00 00 00 00 Access address 0x1234 = 0001 0010 0011 0100 Offset = 0 Index = 5 Tag = 145 Valid bit == 0 à miss
26 Cache Behavior Example Set # Valid Tag Data 0
0 000 00 00 00 00 1 0 000 00 00 00 00 2 0 000 00 00 00 00 3 0 000 00 00 00 00 4 0 000 00 00 00 00 5 1 145 0F 1E 39 EC 6 0 000 00 00 00 00 7 0 000 00 00 00 00 Access address 0x1234 = 0001 0010 0011 0100 lb: 00 00 00 EC lh: 00 00 39 EC lw: 0F 1E 39 EC Offset = 2 Tag = 145 Index = 5 Valid && tag match à hit
27 Cache Behavior Example Set # Valid Tag Data 0
0 000 00 00 00 00 1 0 000 00 00 00 00 2 0 000 00 00 00 00 3 0 000 00 00 00 00 4 0 000 00 00 00 00 5 1 145 0F 1E 39 EC 6 0 000 00 00 00 00 7 0 000 00 00 00 00 Valid && tag match à hit lb: 00 00 00 1E lh: 00 00 0F 1E lw: (unaligned) Access address 0x1236 = 0001 0010 0011 0110 Offset = 2 Index = 5 Tag = 145
28 Cache Behavior Example Set # Valid Tag Data 0
0 000 00 00 00 00 1 0 000 00 00 00 00 2 0 000 00 00 00 00 3 0 000 00 00 00 00 4 0 000 00 00 00 00 5 1 145 0F 1E 39 EC 6 0 000 00 00 00 00 7 0 000 00 00 00 00 Access address 0x1238 = 0001 0010 0011 1000 Offset = 0 Index = 6 Tag = 145 Not valid à miss
29 Cache Behavior Example Set # Valid Tag Data 0
0 000 00 00 00 00 1 0 000 00 00 00 00 2 0 000 00 00 00 00 3 0 000 00 00 00 00 4 0 000 00 00 00 00 5 1 145 0F 1E 39 EC 6 0 000 00 00 00 00 7 0 000 00 00 00 00 Access address 0x1238 = 0001 0010 0011 1000 1 145 Make request to next level... Wait for it…
30 Cache Behavior Example Set # Valid Tag Data 0
0 000 00 00 00 00 1 0 000 00 00 00 00 2 0 000 00 00 00 00 3 0 000 00 00 00 00 4 0 000 00 00 00 00 5 1 145 0F 1E 39 EC 6 1 145 3C 99 11 12 7 0 000 00 00 00 00 Access address 0x2234 = 0010 0010 0011 0100 Offset = 0 Index = 5 Tag = 273 Valid, but tags don’t match à miss
31 Cache Behavior Example Set # Valid Tag Data 0
0 000 00 00 00 00 1 0 000 00 00 00 00 2 0 000 00 00 00 00 3 0 000 00 00 00 00 4 0 000 00 00 00 00 5 1 145 0F 1E 39 EC 6 1 145 3C 99 11 12 7 0 000 00 00 00 00 Access address 0x2234 = 0010 0010 0011 0100 Make request to next level... Wait for it… 273
32 Cache Behavior Example Set # Valid Tag Data 0
0 000 00 00 00 00 1 0 000 00 00 00 00 2 0 000 00 00 00 00 3 0 000 00 00 00 00 4 0 000 00 00 00 00 5 1 273 01 CF D0 87 6 1 145 3C 99 11 12 7 0 000 00 00 00 00 Access address 0x2234 = 0010 0010 0011 0100 Note that now, 0x1234’s data is gone Replaced by 0x2234’s data