CacheLab 日志

2019-05-16  本文已影响0人  苺一語

2015CMU 15-213 CSAPP 深入理解计算机系统 课程视频含英文字幕
这是2015年的课程,PPT 已经不太一样了。
与实验直接相关的内容是 Lecture 11 与 12.

学校下发的是 2013年 的 PPT 和 2012年 的文档,我姑且还是翻译了一下:
Cache Lab 实现与分块
Cache Lab 中文文档

PPT 里面的一幅漫画,不太懂。毕竟没玩过 Video Game

用反向图片搜索找到这个漫画的出处了,附漫画网站:
xkcd:A webcomic of romance,
sarcasm, math, and language.


差不多已经把文档和 PPT 看过一遍了,CMU 的公开课也看了一下。感觉差不多可以开始做实验了。

任务1

PS:学校还是很蛋疼的,要我们在还没学对应知识的时候就做实验,给的阅读材料也不是很全,只看材料不看公开课的讲解还是很难理解的。

实验要求

那么就分析一下文档中给出的例子吧:

linux> ./csim-ref -v -s 4 -E 1 -b 4 -t traces/yi.trace
L 10,1 miss
M 20,1 miss hit
L 22,1 hit
S 18,1 hit
L 110,1 miss eviction
L 210,1 miss eviction
M 12,1 miss eviction hit
hits:4 misses:5 evictions:3

根据命令行参数,这个模拟缓存有4个缓存集,结合度为1(每个缓存集有一个缓存行),每个块的字节数为 24 =16个;追迹文件为 yi.trace。下面逐行进行解析:

结合度为1,即“直接映射”,此种方法下,由于缓存集中只有一个缓存行,所以不必考虑驱逐规则,总是“后来者居上”。

set line0:有效位 - 标志位 - 块
set 0 0 - 未知 - 未知
set 1 0 - 未知 - 未知
set 2 0 - 未知 - 未知
set 3 0 - 未知 - 未知
set line0:有效位 - 标志位 - 块
set 0 0 - 未知 - 未知
set 1 1 - 00000000000000000000000000 - 0x10 ~ 0x1F
set 2 0 - 未知 - 未知
set 3 0 - 未知 - 未知
set line0:有效位 - 标志位 - 块
set 0 0 - 未知 - 未知
set 1 1 - 00000000000000000000000000 - 0x10 ~ 0x1F
set 2 1 - 00000000000000000000000000 - 0x20 ~ 0x2F
set 3 0 - 未知 - 未知
set line0:有效位 - 标志位 - 块
set 0 0 - 未知 - 未知
set 1 1 - 00000000000000000000000000 - 0x10 ~ 0x1F
set 2 1 - 00000000000000000000000000 - 0x20 ~ 0x2F
set 3 0 - 未知 - 未知
set line0:有效位 - 标志位 - 块
set 0 0 - 未知 - 未知
set 1 1 - 00000000000000000000000000 - 0x10 ~ 0x1F
set 2 1 - 00000000000000000000000000 - 0x20 ~ 0x2F
set 3 0 - 未知 - 未知
set line0:有效位 - 标志位 - 块
set 0 0 - 未知 - 未知
set 1 1 - 00000000000000000000000100 - 0x110 ~ 0x11F
set 2 1 - 00000000000000000000000000 - 0x20 ~ 0x2F
set 3 0 - 未知 - 未知
set line0:有效位 - 标志位 - 块
set 0 0 - 未知 - 未知
set 1 1 - 00000000000000000000001000 - 0x210 ~ 0x21F
set 2 1 - 00000000000000000000000000 - 0x20 ~ 0x2F
set 3 0 - 未知 - 未知
set line0:有效位 - 标志位 - 块
set 0 0 - 未知 - 未知
set 1 1 - 00000000000000000000000000 - 0x10 ~ 0x1F
set 2 1 - 00000000000000000000000000 - 0x20 ~ 0x2F
set 3 0 - 未知 - 未知

上一篇下一篇

猜你喜欢

热点阅读