简介:
存储器山:具有不同的时间局部性和空间局部性的程序,对存储器层次结构的利用效率是不同的。局部性较好,则能得到较快的访问速率。构造一个存储器测试程序,以不同的时间局部性和空间局部性对存储器进行访问,就能得到存储器系统在不同的局部性下的性能(即访问速率)。以控制时间局部性的变量为x轴,控制空间局部性的变量为y轴,存储器访问速率为z轴,就能得到一个三维图形,它看起来像一座有着山峰,山脊和山坡的小山,即存储器山。(参考百度百科)
*本文将简单介绍如何自制存储器山并对实验结果进行详细分析。
I. 制作过程
(在课本主页下载存储器山的源代码并运行)
代码下载地址:csapp主页——“Chapter 6: The Memory Hierarchy”——“A less sophisticated program from the CS:APP2e text for generating the memory mountain (tar)”——点击tar即可下载
代码运行:mountain.c这个文件中包含对另外两个自定义的头文件(“clock.h”以及“fcyc2.h)的引用,运行前都需要自动编译:make
生成可执行文件:./mountain>output_ucloud.txt
注意:本地编译完成的文件不能直接在ucloud上运行,会报错“cannot execute