IBM z15 Mainframe CPU 分支预测器学习笔记

IBM z15 Mainframe CPU 分支预测器学习笔记

💡 原文中文,约3200字,阅读约需8分钟。
📝

内容提要

IBM z15主机CPU的分支预测器设计包括128KB的L1 ICache和4MB的L2 ICache,采用两级BTB以提高预测准确率。分支预测器结合了CPRED、PHT和Perceptron等多种机制,优化了性能和功耗,确保高效的分支预测。

🎯

关键要点

  • IBM z15主机CPU的分支预测器设计包括128KB的L1 ICache和4MB的L2 ICache。

  • z15处理器设计了两级的BTB,L1 BTB容量为16K,L2 BTB容量为128K。

  • 为了提高预测准确率,z15结合了CPRED、PHT和Perceptron等多种机制。

  • z15采用分离式前端,分支预测器有6级流水线,分别为b0-b5。

  • z15的L1 BTB支持每周期进行8条分支的预测,并使用SKOOT预测器快速跳过无分支指令。

  • z15记录了Global Path Vector(GPV),用于方向预测,GPV记录最近17条taken branch的历史。

  • z15的方向预测优先级为Perceptron > TAGE > BHT。

  • z15设计了Changing Target Buffer(CTB)用于预测间接分支的目的地址。

延伸问答

IBM z15主机CPU的分支预测器有哪些主要组成部分?

IBM z15主机CPU的分支预测器主要由128KB的L1 ICache、4MB的L2 ICache、两级BTB、CPRED、PHT和Perceptron等组成。

z15的分支预测器如何提高预测准确率?

z15通过结合CPRED、PHT和Perceptron等多种机制来提高预测准确率。

z15的L1 BTB和L2 BTB的容量分别是多少?

z15的L1 BTB容量为16K,L2 BTB容量为128K。

z15的分支预测器采用了什么样的流水线设计?

z15的分支预测器采用了6级流水线设计,分别为b0到b5。

z15如何处理间接分支的目的地址预测?

z15通过Changing Target Buffer(CTB)和Call/Return Stack(CRS)来预测间接分支的目的地址。

z15的方向预测优先级是怎样的?

z15的方向预测优先级为Perceptron > TAGE > BHT。

➡️

继续阅读