跳转至

实验概述

实验目的

  1. 加深对分支预测原理的理解,掌握分支预测器的软件实现方法;

  2. 进一步熟悉程序插桩的原理,掌握Pin插桩工具的编写和使用方法;

  3. 了解使用Pin插桩工具进行体系结构分析的方法。

实验内容

  本实验将基于Pin插桩分析的工作机理,使用C/C++实现分支预测器的软件模型,从而在进一步熟悉插桩工具使用的同时,加深对分支预测原理的理解。

  请参考Pin工具包的插桩API文档,实现基于BHT和全局历史的2种基本动态分支预测方法,并借助其进一步实现锦标赛预测器TAGE预测器

要求 💁

  所编写的分支预测器只需预测分支是否跳转,不需预测分支跳转的目标地址。

  所有实现的分支预测器,其 实际 占用的存储资源不得超过 33KB