验收与提交
实验报告要求
实验报告需包含以下内容:
(1)借助Pin的API文档,阅读ManualExamples目录下inscount0、inscout1和inscout2工具的源码,分析插桩工具的代码框架和执行过程;
(2)思考并回答以下问题,将答案以及分析过程写入实验报告。
a. 可以发现,指令依赖距离分布图存在很长的尾巴。试分析尾巴可能是由哪些寄存器引 起的?为什么?
b. 设有2个不同架构的处理器平台,现分别于其上运行由相同版本编译器所编译的测试程 序,并分别在这两个平台上使用insDependDist工具对该测试程序进行插桩分析,得到如 图6-1所示的指令依赖距离分布图。请问架构A、B之中谁具有更多的寄存器?为什么?

c. 现有基于相同ISA设计的架构A和架构B。若架构A采用 停顿法解决流水线数据冲突,架构B则采用数据转发法,当二者执行相同的测试程序时, 它们的指令依赖距离分布图是否相同?为什么?
验收与提交要求
- 必做题:
将源码(makefile.rules、*.cpp)及实验报告打包成.zip,以“学号_姓名_ARCH实验1.zip”命名并提交。
- 附加题:
将附加题源文件重命名(如insDependDist1.cpp),并与必做题提交材料一同打包提交;实验报告的要求见题目。