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
83
Cache behavior
Chen
November 03, 2022
Tweet
Share
More Decks by Chen
See All by Chen
Example ROP in MIPS
tiffany_04192
0
54
defense
tiffany_04192
0
72
Dijkstra’s Algorithm
tiffany_04192
0
110
Floyd-Warshall
tiffany_04192
0
87
Topological sort DFS
tiffany_04192
0
92
BFS
tiffany_04192
0
130
DFS
tiffany_04192
0
110
Cache miss paper
tiffany_04192
0
110
Greedy
tiffany_04192
0
100
Other Decks in Science
See All in Science
高校生就活へのDA導入の提案
shunyanoda
0
6k
傾向スコアによる効果検証 / Propensity Score Analysis and Causal Effect Estimation
ikuma_w
0
140
データベース14: B+木 & ハッシュ索引
trycycle
PRO
0
480
MCMCのR-hatは分散分析である
moricup
0
460
データベース02: データベースの概念
trycycle
PRO
2
920
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
170
Cross-Media Technologies, Information Science and Human-Information Interaction
signer
PRO
3
31k
My Little Monster
juzishuu
0
110
Accelerated Computing for Climate forecast
inureyes
0
120
テンソル分解による糖尿病の組織特異的遺伝子発現の統合解析を用いた関連疾患の予測
tagtag
2
260
機械学習 - 授業概要
trycycle
PRO
0
250
CV_3_Keypoints
hachama
0
210
Featured
See All Featured
Music & Morning Musume
bryan
46
6.8k
Thoughts on Productivity
jonyablonski
70
4.9k
Large-scale JavaScript Application Architecture
addyosmani
514
110k
The World Runs on Bad Software
bkeepers
PRO
71
11k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
32
2.3k
Unsuck your backbone
ammeep
671
58k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
2.7k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
A better future with KSS
kneath
239
18k
The Art of Programming - Codeland 2020
erikaheidi
56
14k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
114
20k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
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