找出拐点在哪

从上一题那四个数里,找出涨幅最大的那一段,给出「从几到几 / 涨了几倍」。

开始练习 →

清不清场,量出来差多少

同一段访问,一次从空缓存开始、一次接着上一轮的缓存跑。把两次的未命中次数都打出来。

开始练习 →

把未命中换算成代价

按「命中算 4、未命中算 200」的口径,算出两种数据量下的总代价和倍数。

开始练习 →

多核之后多了什么麻烦

每个核各有自己的缓存。这带来的新麻烦是【0】。

开始练习 →

一个核改了数据,别人怎么办

一个核改了自己缓存里的某一块,别的核缓存里那一块【0】。

开始练习 →

一致性协议的代价落在哪

维护缓存一致性的代价,主要落在【0】。

开始练习 →

两个核轮流改同一块

运行下面这段程序,填写它打印出来的结果。 BLK = 4 def traffic(seq): owner = -1 moves = 0 for core, addr in seq: b = addr

开始练习 →

改成各改各的块

运行下面这段程序,填写它打印出来的结果。 BLK = 4 def traffic(seq): owner = {} moves = 0 for core, addr in seq: b = addr

开始练习 →

自己写:数一数块搬了几趟

每一块同一时刻只能归一个核。核一换,就记一趟搬运。

开始练习 →

同一块里改不同位置

两个核改的是同一块里的不同位置(地址 0 和地址 1)。数一数搬了几趟,再和「各改各块」比一比。

开始练习 →