文章
5
粉丝
0
获赞
0
访问
380
代码随着变量i的自增顺序遍历整个数组,空间局部性强,每个数组元素只访问一次,不具有时间局部性。
float类型数据占用连续的四个字节,每次cache缺失都会 从内存中调入连续的16字节数据,也就是四个数组元素,因此没四次数组元素访问中的第一次会导致cache缺失。变量sum和i存放在寄存器中不涉及访存,因此命中率为75%。
cache块改为8B,每个块可以存放两个数组元素,cache数据区为32B,采用二路组相联,分为四个块,两组,50%.
评分及理由
(1)得分及理由(满分2分)
得分:2分
理由:学生正确分析了空间局部性好(顺序访问数组元素)和时间局部性差(每个元素仅访问一次),与标准答案一致。
(2)得分及理由(满分3分)
得分:0分
理由:学生错误计算命中率为75%,未考虑直接映射下x和y数组的块冲突问题(每次访问均因替换而缺失),实际命中率为0%。逻辑错误导致结论与标准答案不符。
(3)得分及理由(满分3分)
得分:3分
理由:学生正确分析二路组相联下每组可缓存两个元素,命中率为50%,与标准答案一致。
(4)得分及理由(满分3分)
得分:0分
理由:学生未作答,未分析数组x扩展后的命中率变化,遗漏题目要求。
题目总分:2+0+3+0=5分
登录后发布评论
暂无评论,来抢沙发