从微操作到抽象资源:构建更简单的CPU性能模型

2021-01-04 11:56:40

下载PDF摘要:本文介绍了PALMED,它是一种自动构建资源映射的工具,它是用于流水线,超标量,乱序的CPU体系结构的性能模型。资源映射通过在程序中分配指令以抽象资源来描述程序的执行。它们可用于预测基本块的吞吐量,或用作优化编译器后端的机器模型。 PALMED不需要硬件性能计数器,仅依靠运行时测量来构建资源映射。这样,它不仅可以建模执行端口的使用情况,还可以建模其他限制资源,例如前端或重新排序缓冲区。同样,由于资源映射的双重表示,我们用于构建映射的算法可扩展为大型指令集,例如x86。我们以两种方式评估本文的算法贡献。首先,通过证明我们的方法可以对现有端口映射产生的理想性能模型进行逆向工程,以进行准确的资源映射。我们还通过从Spec CPU 2017基准测试的编译二进制文件中提取了代表块的基本块并将现有机器模型预测的吞吐量与PALMED产生的吞吐量进行了比较,从而评估了与标准端口映射相对的吞吐量表示建模的双重表示的相关性。